Sync to Wine-20050830:
Mike McCormack <mike@codeweavers.com>
- Fix a gcc 4.0 -Wpointer-sign warning.
- gcc 4.0 warning fix.
Modified: trunk/reactos/tools/unicode/mbtowc.c
Modified: trunk/reactos/tools/unicode/wctomb.c

Modified: trunk/reactos/tools/unicode/mbtowc.c
--- trunk/reactos/tools/unicode/mbtowc.c	2005-09-05 09:26:02 UTC (rev 17657)
+++ trunk/reactos/tools/unicode/mbtowc.c	2005-09-05 10:18:07 UTC (rev 17658)
@@ -251,9 +251,11 @@
 
 /* return -1 on dst buffer overflow, -2 on invalid input char */
 int wine_cp_mbstowcs( const union cptable *table, int flags,
-                      const char *src, int srclen,
+                      const char *s, int srclen,
                       WCHAR *dst, int dstlen )
 {
+    const unsigned char *src = (const unsigned char*) s;
+
     if (table->info.char_size == 1)
     {
         if (flags & MB_ERR_INVALID_CHARS)

Modified: trunk/reactos/tools/unicode/wctomb.c
--- trunk/reactos/tools/unicode/wctomb.c	2005-09-05 09:26:02 UTC (rev 17657)
+++ trunk/reactos/tools/unicode/wctomb.c	2005-09-05 10:18:07 UTC (rev 17658)
@@ -198,12 +198,16 @@
 {
     const unsigned char  * const uni2cp_low = table->uni2cp_low;
     const unsigned short * const uni2cp_high = table->uni2cp_high;
-    const unsigned char table_default = table->info.def_char & 0xff;
+    unsigned char def;
     unsigned int len;
     int tmp;
     WCHAR composed;
 
-    if (!defchar) defchar = (const char*)&table_default;
+    if (!defchar)
+        def = table->info.def_char & 0xff;
+    else
+        def = *defchar;
+
     if (!used) used = &tmp;  /* avoid checking on every char */
     *used = 0;
 
@@ -225,7 +229,7 @@
             /* no mapping for the composed char, check the other flags */
             if (flags & WC_DEFAULTCHAR) /* use the default char instead */
             {
-                *dst = *defchar;
+                *dst = def;
                 *used = 1;
                 src++;  /* skip the non-spacing char */
                 srclen--;
@@ -242,7 +246,7 @@
         *dst = uni2cp_low[uni2cp_high[wch >> 8] + (wch & 0xff)];
         if (!is_valid_sbcs_mapping( table, flags, wch, *dst ))
         {
-            *dst = *defchar;
+            *dst = def;
             *used = 1;
         }
     }