On Fri, 2009-09-11 at 11:53 +0200, Johan Euphrosine wrote: > I believe this might be due a border case where the long poll > deferred > returns None instead of []. > > I'll investigate more on this issue.
Got it:
def handlePacketDefer(self, packet):
if packet.type == PACKET_POKER_LONG_POLL:
return self.longpollDeferred()
def longpollDeferred(self):
self._longpoll_deferred = defer.Deferred()
self.flushLongPollDeferred()
return self._longpoll_deferred
def flushLongPollDeferred(self):
if self._block_longpoll_deferred == False and self._longpoll_deferred
and len(self._packets_queue) > 0:
packets = self.resetPacketsQueue()
d = self._longpoll_deferred
self._longpoll_deferred = None
d.callback(packets)
self._packet_queue is not empty
-> flushLongPollDeferred set _longpoll_deferred to None
-> longpollDeferred returns self._longpoll_deferred (None)
-> handlePacketDefer returns self.longpollDeferred() (None)
-> *CRASH*
Will work on a testcase to reproduce this issue.
--
Johan Euphrosine <[email protected]>
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Pokersource-users mailing list [email protected] https://mail.gna.org/listinfo/pokersource-users
