diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2012-02-14 13:55:45 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2012-02-14 13:55:45 +0000 |
commit | a8c8f19a43534cb9172539fcfcc6e83a39f48b9d (patch) | |
tree | 78f2bfd823df547fcfcc4800187f24ea7600ced6 /winsup/cygwin/flock.cc | |
parent | 8895d962d5fbb79dcd65db9d801644fb1fa2ca5e (diff) | |
download | newlib-a8c8f19a43534cb9172539fcfcc6e83a39f48b9d.zip newlib-a8c8f19a43534cb9172539fcfcc6e83a39f48b9d.tar.gz newlib-a8c8f19a43534cb9172539fcfcc6e83a39f48b9d.tar.bz2 |
* flock.cc (lf_setlock): Don't close waited lock object handle before
we own the node lock. Fix comment.
Diffstat (limited to 'winsup/cygwin/flock.cc')
-rw-r--r-- | winsup/cygwin/flock.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/winsup/cygwin/flock.cc b/winsup/cygwin/flock.cc index bd50871..4f92064 100644 --- a/winsup/cygwin/flock.cc +++ b/winsup/cygwin/flock.cc @@ -1039,11 +1039,11 @@ lf_setlock (lockf_t *lock, inode_t *node, lockf_t **clean, HANDLE fhdl) DWORD ret = WaitForMultipleObjects (wait_count, w4, FALSE, proc ? INFINITE : 100L); SetThreadPriority (GetCurrentThread (), old_prio); - /* Always close handles before locking the node. */ - NtClose (obj); if (proc) CloseHandle (proc); node->LOCK (); + /* Never close lock object handle outside of node lock! */ + NtClose (obj); if (ret == WAIT_SIGNAL_ARRIVED) { /* A signal came in. */ |