From: shangxu Date: Fri, 13 Nov 2020 10:03:01 +0000 (+0800) Subject: [PATCH] fix Out Of Memory when use TNonblockingServer X-Git-Tag: archive/raspbian/0.16.0-5+rpi1^2~3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=32e203d2a8af43b8641c989d9b15f4e65b38abb6;p=thrift.git [PATCH] fix Out Of Memory when use TNonblockingServer Gbp-Pq: Name fix_out_of_memory.patch --- diff --git a/lib/py/src/server/TNonblockingServer.py b/lib/py/src/server/TNonblockingServer.py index f62d486..ac06496 100644 --- a/lib/py/src/server/TNonblockingServer.py +++ b/lib/py/src/server/TNonblockingServer.py @@ -151,6 +151,10 @@ class Connection(object): while len(self._rbuf) >= self._reading.end: if self._reading.is_header: mlen, = struct.unpack('!i', self._rbuf[:4]) + if mlen < 0: + logger.error('could not read the head from frame') + self.close() + break self._reading = Message(self._reading.end, mlen, False) self.status = WAIT_MESSAGE else: