DISPATCH-927: only disassociate link on the closed session
Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/db5af96c Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/db5af96c Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/db5af96c Branch: refs/heads/master Commit: db5af96cae3e57d377cb75a9311589c7f98f7f0a Parents: 80c0443 Author: Gordon Sim <g...@redhat.com> Authored: Thu Feb 22 21:05:14 2018 +0000 Committer: Gordon Sim <g...@redhat.com> Committed: Thu Feb 22 21:05:14 2018 +0000 ---------------------------------------------------------------------- src/container.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/db5af96c/src/container.c ---------------------------------------------------------------------- diff --git a/src/container.c b/src/container.c index b7cc2ab..aa5bede 100644 --- a/src/container.c +++ b/src/container.c @@ -400,9 +400,11 @@ void qd_container_handle_event(qd_container_t *container, pn_event_t *event) ssn = pn_event_session(event); pn_link = pn_link_head(conn, PN_LOCAL_ACTIVE | PN_REMOTE_CLOSED); while (pn_link) { - qd_link_t *qd_link = (qd_link_t*) pn_link_get_context(pn_link); - if (qd_link) - qd_link->pn_link = 0; + if (pn_link_session(pn_link) == ssn) { + qd_link_t *qd_link = (qd_link_t*) pn_link_get_context(pn_link); + if (qd_link) + qd_link->pn_link = 0; + } pn_link = pn_link_next(pn_link, PN_LOCAL_ACTIVE | PN_REMOTE_CLOSED); } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org