diff options
Diffstat (limited to 'python/qpid/messaging.py')
-rw-r--r-- | python/qpid/messaging.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/python/qpid/messaging.py b/python/qpid/messaging.py index d2769dde4c..47f7e560c5 100644 --- a/python/qpid/messaging.py +++ b/python/qpid/messaging.py @@ -1006,6 +1006,9 @@ class Driver(Lockable): if snd.closed: del self._attachments[snd] + return None + else: + return _snd def link_in(self, rcv): _ssn = self._attachments[rcv.session] @@ -1037,6 +1040,9 @@ class Driver(Lockable): _ssn.sync() del self._attachments[rcv] rcv.closed = True + return None + else: + return _rcv def process(self, ssn): if ssn.closing: return @@ -1113,7 +1119,7 @@ class Driver(Lockable): def grant(self, rcv): _ssn = self._attachments[rcv.session] - _rcv = self._attachments[rcv] + _rcv = self.link_in(rcv) if rcv.granted is UNLIMITED: if rcv.impending is UNLIMITED: @@ -1149,7 +1155,7 @@ class Driver(Lockable): def send(self, snd, msg): _ssn = self._attachments[snd.session] - _snd = self._attachments[snd] + _snd = self.link_out(snd) # XXX: what if subject is specified for a normal queue? if _snd._routing_key is None: |