Author: mahadev
Date: Thu Oct 28 16:24:42 2010
New Revision: 1028375

URL: http://svn.apache.org/viewvc?rev=1028375&view=rev
Log:
ZOOKEEPER-897. C Client seg faults during close (jared cantwell via mahadev)

Modified:
    hadoop/zookeeper/branches/branch-3.3/CHANGES.txt
    hadoop/zookeeper/branches/branch-3.3/src/c/src/zookeeper.c

Modified: hadoop/zookeeper/branches/branch-3.3/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.3/CHANGES.txt?rev=1028375&r1=1028374&r2=1028375&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.3/CHANGES.txt (original)
+++ hadoop/zookeeper/branches/branch-3.3/CHANGES.txt Thu Oct 28 16:24:42 2010
@@ -59,6 +59,8 @@ BUGFIXES:
   ZOOKEEPER-904. super digest is not actually acting as a full superuser
   (Camille Fournier via mahadev)
 
+  ZOOKEEPER-897. C Client seg faults during close (jared cantwell via mahadev)
+
 IMPROVEMENTS:
 
   ZOOKEEPER-789. Improve FLE log messages (flavio via phunt)

Modified: hadoop/zookeeper/branches/branch-3.3/src/c/src/zookeeper.c
URL: 
http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.3/src/c/src/zookeeper.c?rev=1028375&r1=1028374&r2=1028375&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.3/src/c/src/zookeeper.c (original)
+++ hadoop/zookeeper/branches/branch-3.3/src/c/src/zookeeper.c Thu Oct 28 
16:24:42 2010
@@ -2288,7 +2288,11 @@ int zookeeper_close(zhandle_t *zh)
 
     zh->close_requested=1;
     if (inc_ref_counter(zh,0)!=0) {
-        cleanup_bufs(zh, 1, ZCLOSING);
+       /* Signal any syncronous completions before joining the threads */
+        enter_critical(zh);
+        free_completions(zh,1,ZCLOSING);
+        leave_critical(zh);
+
         adaptor_finish(zh);
         return ZOK;
     }


Reply via email to