You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by rg...@apache.org on 2016/08/03 18:20:18 UTC

svn commit: r1755102 - in /zookeeper/branches/branch-3.4: CHANGES.txt src/c/src/zookeeper.c

Author: rgs
Date: Wed Aug  3 18:20:18 2016
New Revision: 1755102

URL: http://svn.apache.org/viewvc?rev=1755102&view=rev
Log:
ZOOKEEPER-2498: Potential resource leak in C client when processing
unexpected / out of order response (Michael Han via rgs)

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

Modified: zookeeper/branches/branch-3.4/CHANGES.txt
URL: http://svn.apache.org/viewvc/zookeeper/branches/branch-3.4/CHANGES.txt?rev=1755102&r1=1755101&r2=1755102&view=diff
==============================================================================
--- zookeeper/branches/branch-3.4/CHANGES.txt (original)
+++ zookeeper/branches/branch-3.4/CHANGES.txt Wed Aug  3 18:20:18 2016
@@ -42,6 +42,9 @@ BUGFIXES:
   ZOOKEEPER-1256: ClientPortBindTest is failing on Mac OS X
   (Camille via phunt)
 
+  ZOOKEEPER-2498: Potential resource leak in C client when processing
+  unexpected / out of order response (Michael Han via rgs)
+
 IMPROVEMENTS:
 
   ZOOKEEPER-2240 Make the three-node minimum more explicit in 

Modified: zookeeper/branches/branch-3.4/src/c/src/zookeeper.c
URL: http://svn.apache.org/viewvc/zookeeper/branches/branch-3.4/src/c/src/zookeeper.c?rev=1755102&r1=1755101&r2=1755102&view=diff
==============================================================================
--- zookeeper/branches/branch-3.4/src/c/src/zookeeper.c (original)
+++ zookeeper/branches/branch-3.4/src/c/src/zookeeper.c Wed Aug  3 18:20:18 2016
@@ -2276,9 +2276,10 @@ int zookeeper_process(zhandle_t *zh, int
                 // put the completion back on the queue (so it gets properly
                 // signaled and deallocated) and disconnect from the server
                 queue_completion(&zh->sent_requests,cptr,1);
-                return handle_socket_error_msg(zh, __LINE__,ZRUNTIMEINCONSISTENCY,
-                        "unexpected server response: expected %#x, but received %#x",
-                        hdr.xid,cptr->xid);
+                return api_epilog(zh,
+                                  handle_socket_error_msg(zh, __LINE__,ZRUNTIMEINCONSISTENCY,
+                                  "unexpected server response: expected %#x, but received %#x",
+                                  hdr.xid,cptr->xid));
             }
 
             activateWatcher(zh, cptr->watcher, rc);