You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by gs...@apache.org on 2013/09/24 18:27:33 UTC

svn commit: r1525941 - /qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp

Author: gsim
Date: Tue Sep 24 16:27:32 2013
New Revision: 1525941

URL: http://svn.apache.org/r1525941
Log:
QPID-5170: if peer settles without setting state, treat as accept

Modified:
    qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp?rev=1525941&r1=1525940&r2=1525941&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp Tue Sep 24 16:27:32 2013
@@ -121,6 +121,10 @@ void OutgoingFromQueue::handle(pn_delive
     } else if (pn_delivery_updated(delivery)) {
         assert(r.delivery == delivery);
         r.disposition = pn_delivery_remote_state(delivery);
+        if (!r.disposition && pn_delivery_settled(delivery)) {
+            //if peer has settled without setting state, assume accepted
+            r.disposition = PN_ACCEPTED;
+        }
         if (r.disposition) {
             switch (r.disposition) {
               case PN_ACCEPTED:
@@ -142,7 +146,7 @@ void OutgoingFromQueue::handle(pn_delive
               default:
                 QPID_LOG(warning, "Unhandled disposition: " << r.disposition);
             }
-            //TODO: ony settle once any dequeue on store has completed
+            //TODO: only settle once any dequeue on store has completed
             pn_delivery_settle(delivery);
             r.reset();
         }



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