Module: wine Branch: master Commit: 39345a1b15ed4870b5ce49fbdf877ad226c836f4 URL: http://source.winehq.org/git/wine.git/?a=commit;h=39345a1b15ed4870b5ce49fbdf...
Author: Piotr Caban piotr@codeweavers.com Date: Tue Oct 23 18:09:48 2012 +0200
msvcrt: Fixed _ungetwc implementation.
---
dlls/msvcrt/file.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index d9ce987..185b1e2 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -3995,9 +3995,12 @@ int CDECL MSVCRT_ungetc(int c, MSVCRT_FILE * file) MSVCRT_wint_t CDECL MSVCRT_ungetwc(MSVCRT_wint_t wc, MSVCRT_FILE * file) { MSVCRT_wchar_t mwc = wc; - char * pp = (char *)&mwc; + unsigned char * pp = (unsigned char *)&mwc; int i;
+ if (wc == MSVCRT_WEOF) + return MSVCRT_WEOF; + MSVCRT__lock_file(file); for(i=sizeof(MSVCRT_wchar_t)-1;i>=0;i--) { if(pp[i] != MSVCRT_ungetc(pp[i],file)) {