You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by cl...@apache.org on 2017/04/24 06:43:58 UTC

qpid-proton git commit: PROTON-1460: epoll proactor shutdown, wait for EOS on socket read to cleanup connection

Repository: qpid-proton
Updated Branches:
  refs/heads/master 80def6f9a -> 391ec64d9


PROTON-1460: epoll proactor shutdown, wait for EOS on socket read to cleanup connection


Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/391ec64d
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/391ec64d
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/391ec64d

Branch: refs/heads/master
Commit: 391ec64d92927eb93d92c3ae440dc933f215b0e6
Parents: 80def6f
Author: Clifford Jansen <cl...@apache.org>
Authored: Sun Apr 23 23:42:32 2017 -0700
Committer: Clifford Jansen <cl...@apache.org>
Committed: Sun Apr 23 23:42:32 2017 -0700

----------------------------------------------------------------------
 proton-c/src/proactor/epoll.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/391ec64d/proton-c/src/proactor/epoll.c
----------------------------------------------------------------------
diff --git a/proton-c/src/proactor/epoll.c b/proton-c/src/proactor/epoll.c
index 126a7e2..7f49928 100644
--- a/proton-c/src/proactor/epoll.c
+++ b/proton-c/src/proactor/epoll.c
@@ -717,13 +717,12 @@ static inline bool pconnection_work_pending(pconnection_t *pc) {
 static void pconnection_done(pconnection_t *pc) {
   bool notify = false;
   lock(&pc->context.mutex);
-  // Is this a good time to write if not write_blocked? For now, rely on topup mechanism.
   pc->context.working = false;  // So we can wake() ourself if necessary.  We remain the defacto
                                 // working context while the lock is held.
   pc->hog_count = 0;
   if (pconnection_has_event(pc) || pconnection_work_pending(pc)) {
     notify = wake(&pc->context);
-  } else if (!pc->cached_event && pn_connection_driver_finished(&pc->driver)) {
+  } else if (!pc->read_closed && pn_connection_driver_finished(&pc->driver)) {
     pconnection_begin_close(pc);
     if (pconnection_is_final(pc)) {
       unlock(&pc->context.mutex);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org