- Update fputwc implementation to current wine sources
authorGregor Schneider <grschneider@gmail.com>
Fri, 19 Dec 2008 16:57:48 +0000 (16:57 +0000)
committerGregor Schneider <grschneider@gmail.com>
Fri, 19 Dec 2008 16:57:48 +0000 (16:57 +0000)
- Fixes 23 msvcrt file winetests

svn path=/trunk/; revision=38185

reactos/lib/sdk/crt/stdio/file.c

index 2301956..98e3cd3 100644 (file)
@@ -2167,28 +2167,10 @@ size_t CDECL fwrite(const void *ptr, size_t size, size_t nmemb, FILE* file)
  */
 wint_t CDECL fputwc(wint_t wc, FILE* file)
 {
-    if (file->_flag & _IOBINARY)
-    {
-        if (fwrite(&wc, sizeof(wc), 1, file) != 1)
-            return WEOF;
-    }
-    else
-    {
-        /* Convert to multibyte in text mode */
-        char mbc[MB_LEN_MAX];
-        int mb_return;
-
-        mb_return = wctomb(mbc, wc);
-
-        if(mb_return == -1)
-            return WEOF;
-
-        /* Output all characters */
-        if (fwrite(mbc, mb_return, 1, file) != 1)
-            return WEOF;
-    }
-
-    return wc;
+  wchar_t mwc=wc;
+  if (fwrite( &mwc, sizeof(mwc), 1, file) != 1)
+    return WEOF;
+  return wc;
 }
 
 /*********************************************************************