Workaround for bug in strxfrm() in Microsoft's newer C runtimes. (#343919,
authorTor Lillqvist <tml@novell.com>
Thu, 8 Jun 2006 15:24:10 +0000 (15:24 +0000)
committerTor Lillqvist <tml@src.gnome.org>
Thu, 8 Jun 2006 15:24:10 +0000 (15:24 +0000)
2006-06-08  Tor Lillqvist  <tml@novell.com>

* glib/gunicollate.c (msc_strxfrm_wrapper): Workaround for bug in
strxfrm() in Microsoft's newer C runtimes. (#343919, Kazuki
Iwamoto)

ChangeLog
ChangeLog.pre-2-12
glib/gunicollate.c

index 9b8bcfc..b331530 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-06-08  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gunicollate.c (msc_strxfrm_wrapper): Workaround for bug in
+       strxfrm() in Microsoft's newer C runtimes. (#343919, Kazuki
+       Iwamoto)
+
 2006-06-05  Matthias Clasen  <mclasen@redhat.com>
 
        * configure.in: Bump version
index 9b8bcfc..b331530 100644 (file)
@@ -1,3 +1,9 @@
+2006-06-08  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gunicollate.c (msc_strxfrm_wrapper): Workaround for bug in
+       strxfrm() in Microsoft's newer C runtimes. (#343919, Kazuki
+       Iwamoto)
+
 2006-06-05  Matthias Clasen  <mclasen@redhat.com>
 
        * configure.in: Bump version
index b702a63..13a8ed5 100644 (file)
 #include "gunicodeprivate.h"
 #include "galias.h"
 
+#ifdef _MSC_VER
+/* Workaround for bug in MSVCR80.DLL */
+static size_t
+msc_strxfrm_wrapper (char       *string1,
+                    const char *string2,
+                    size_t      count)
+{
+  if (!string1 || count <= 0)
+    {
+      char tmp;
+
+      return strxfrm (&tmp, string2, 1);
+    }
+  return strxfrm (string1, string2, count);
+}
+#define strxfrm msc_strxfrm_wrapper
+#endif
+
 /**
  * g_utf8_collate:
  * @str1: a UTF-8 encoded string