Ticket #5898: memcache-fix-stack-overflow.patch
| File memcache-fix-stack-overflow.patch, 2.5 KB (added by binbino, 9 months ago) |
|---|
-
twisted/protocols/basic.py
547 547 rawDataReceived, depending on mode.) 548 548 """ 549 549 self.__buffer = self.__buffer+data 550 while self.line_mode and not self.paused: 551 try: 552 line, self.__buffer = self.__buffer.split(self.delimiter, 1) 553 except ValueError: 554 if len(self.__buffer) > self.MAX_LENGTH: 555 line, self.__buffer = self.__buffer, '' 556 return self.lineLengthExceeded(line) 557 break 550 while not self.paused and self.__buffer: 551 if self.line_mode: 552 try: 553 line, self.__buffer = self.__buffer.split(self.delimiter, 1) 554 except ValueError: 555 if len(self.__buffer) > self.MAX_LENGTH: 556 line, self.__buffer = self.__buffer, '' 557 return self.lineLengthExceeded(line) 558 break 559 else: 560 linelength = len(line) 561 if linelength > self.MAX_LENGTH: 562 exceeded = line + self.__buffer 563 self.__buffer = '' 564 return self.lineLengthExceeded(exceeded) 565 why = self.lineReceived(line) 566 if why or self.transport and self.transport.disconnecting: 567 return why 558 568 else: 559 linelength = len(line) 560 if linelength > self.MAX_LENGTH: 561 exceeded = line + self.__buffer 562 self.__buffer = '' 563 return self.lineLengthExceeded(exceeded) 564 why = self.lineReceived(line) 565 if why or self.transport and self.transport.disconnecting: 569 data, self.__buffer = self.__buffer, '' 570 why = self.rawDataReceived(data) 571 if why: 566 572 return why 567 else:568 if not self.paused:569 data=self.__buffer570 self.__buffer=''571 if data:572 return self.rawDataReceived(data)573 573 574 574 575 575 def setLineMode(self, extra=''): … … 586 586 """ 587 587 self.line_mode = 1 588 588 if extra: 589 return self.dataReceived(extra)589 self.__buffer += extra 590 590 591 591 592 592 def setRawMode(self):
