summaryrefslogtreecommitdiff
path: root/extras
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
commit67507504683596a6dfe76a0e368ce290f3d1f6de (patch)
treedb0fd155dfa61b9b6684f256476de5e54dce51c0 /extras
parent819863e530b2f24bb7682fef36d5b62278fe4f3b (diff)
downloadqpid-python-67507504683596a6dfe76a0e368ce290f3d1f6de.tar.gz
NO-JIRA: clear delivery on disposition update
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1482415 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'extras')
-rw-r--r--extras/dispatch/src/container.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/extras/dispatch/src/container.c b/extras/dispatch/src/container.c
index e65d0c4b63..ff628aa9b1 100644
--- a/extras/dispatch/src/container.c
+++ b/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++;
}