From: Daniel Andersson Date: Wed, 13 Nov 2019 09:03:45 +0000 (+0100) Subject: bpo-38781: Clear buffer in MemoryHandler flush (GH-17132) X-Git-Tag: v3.9.0a1~47 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d89cea15ad37e873003fc74ec2c77660ab620b00;p=thirdparty%2FPython%2Fcpython.git bpo-38781: Clear buffer in MemoryHandler flush (GH-17132) This makes it easier to use a custom buffer when subclassing MemoryHandler (by avoiding the explicity empty list literal assignment in the flush method). For example, collection.deque can now be used without any modifications to MemoryHandler.flush. The same applies to BufferingHandler. --- diff --git a/Lib/logging/handlers.py b/Lib/logging/handlers.py index c1aec9880d72..ea14541e1e50 100644 --- a/Lib/logging/handlers.py +++ b/Lib/logging/handlers.py @@ -1254,7 +1254,7 @@ class BufferingHandler(logging.Handler): """ self.acquire() try: - self.buffer = [] + self.buffer.clear() finally: self.release() @@ -1321,7 +1321,7 @@ class MemoryHandler(BufferingHandler): if self.target: for record in self.buffer: self.target.handle(record) - self.buffer = [] + self.buffer.clear() finally: self.release()