From a74869c027033e90b0cc8e15ef96ac0a82ab06eb Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Fri, 17 Apr 2009 13:29:08 +0000 Subject: * flock.cc (class inode_t): Add i_wait member and matching methods wait(), unwait(), and waiting(). (inode_t::inode_t): Initialize i_wait to 0. (fhandler_disk_file::lock): Only remove node if no other thread is waiting for a blocking lock. (lf_setlock): Manipulate node->i_wait to signal that a thread is waiting for a blocking lock in this node. (lf_findoverlap): Reinstantiate SELF test as in original code. --- winsup/cygwin/ChangeLog | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'winsup/cygwin/ChangeLog') diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 7d834ea04..b81dba3f8 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,14 @@ +2009-04-17 Corinna Vinschen + + * flock.cc (class inode_t): Add i_wait member and matching methods + wait(), unwait(), and waiting(). + (inode_t::inode_t): Initialize i_wait to 0. + (fhandler_disk_file::lock): Only remove node if no other thread is + waiting for a blocking lock. + (lf_setlock): Manipulate node->i_wait to signal that a thread is + waiting for a blocking lock in this node. + (lf_findoverlap): Reinstantiate SELF test as in original code. + 2009-04-16 Corinna Vinschen * dlfcn.cc (get_full_path_of_dll): Just return a bool value. Drop -- cgit v1.2.3