Module: wine Branch: master Commit: eb01bc1efa9f0ebd66f214f652fe187ee3958a0e URL: http://source.winehq.org/git/wine.git/?a=commit;h=eb01bc1efa9f0ebd66f214f652...
Author: Piotr Caban piotr@codeweavers.com Date: Fri May 20 13:22:10 2011 +0200
msvcrt: Make setvbuf thread safe.
---
dlls/msvcrt/file.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index 89f1267..ad70bce 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -3479,7 +3479,7 @@ int CDECL _wrename(const MSVCRT_wchar_t *oldpath,const MSVCRT_wchar_t *newpath) */ int CDECL MSVCRT_setvbuf(MSVCRT_FILE* file, char *buf, int mode, MSVCRT_size_t size) { - /* TODO: Check if file busy */ + MSVCRT__lock_file(file); if(file->_bufsiz) { MSVCRT_free(file->_base); file->_bufsiz = 0; @@ -3494,6 +3494,7 @@ int CDECL MSVCRT_setvbuf(MSVCRT_FILE* file, char *buf, int mode, MSVCRT_size_t s } else { file->_flag |= MSVCRT__IONBF; } + MSVCRT__unlock_file(file); return 0; }