Module: wine Branch: master Commit: b052afd4afab68eb9319e2b19fb18152f395b409 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b052afd4afab68eb9319e2b19f...
Author: Piotr Caban piotr@codeweavers.com Date: Wed Jun 3 13:25:23 2015 +0200
msvcrt: Use fd critical section in msvcrt_free_fd.
---
dlls/msvcrt/file.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index 1077752..616e205 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -332,10 +332,8 @@ static HANDLE msvcrt_fdtoh(int fd) /* INTERNAL: free a file entry fd */ static void msvcrt_free_fd(int fd) { - ioinfo *fdinfo; + ioinfo *fdinfo = get_ioinfo(fd);
- LOCK_FILES(); - fdinfo = get_ioinfo_nolock(fd); if(fdinfo != &MSVCRT___badioinfo) { fdinfo->handle = INVALID_HANDLE_VALUE; @@ -358,7 +356,9 @@ static void msvcrt_free_fd(int fd) break; } } + release_ioinfo(fdinfo);
+ LOCK_FILES(); if (fd == MSVCRT_fdend - 1) MSVCRT_fdend--; if (fd < MSVCRT_fdstart)