summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Anthony Giusti <kgiusti@apache.org>2013-05-14 16:05:19 +0000
committerKenneth Anthony Giusti <kgiusti@apache.org>2013-05-14 16:05:19 +0000
commit59c80fdcd25edb09b0a9afca253c364a9dec5143 (patch)
tree5d78c120dca03ae79ac13463f17a6f6464480f6d
parentfac5206f1fdde43bcf069d75938a70b46affd14c (diff)
downloadqpid-python-59c80fdcd25edb09b0a9afca253c364a9dec5143.tar.gz
NO-JIRA: clear delivery on disposition update
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1482415 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/extras/dispatch/src/container.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/qpid/extras/dispatch/src/container.c b/qpid/extras/dispatch/src/container.c
index e65d0c4b63..ff628aa9b1 100644
--- a/qpid/extras/dispatch/src/container.c
+++ b/qpid/extras/dispatch/src/container.c
@@ -306,14 +306,15 @@ static int process_handler(dx_container_t *container, void* unused, pn_connectio
delivery = pn_work_head(conn);
while (delivery) {
- if (pn_delivery_readable(delivery))
+ if (pn_delivery_readable(delivery))
process_receive(delivery);
else if (pn_delivery_writable(delivery))
do_send(delivery);
- if (pn_delivery_updated(delivery))
+ if (pn_delivery_updated(delivery)) {
do_updated(delivery);
-
+ pn_delivery_clear(delivery);
+ }
delivery = pn_work_next(delivery);
event_count++;
}