From 1dd56e512a4aede702b7b81baeee88a89798d3a7 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Tue, 5 Aug 2014 23:07:25 +0200 Subject: [PATCH] log: Fix RAMHandler so the data can change while iterating. --- qutebrowser/utils/log.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/qutebrowser/utils/log.py b/qutebrowser/utils/log.py index 320e70437..c6a18db53 100644 --- a/qutebrowser/utils/log.py +++ b/qutebrowser/utils/log.py @@ -338,7 +338,12 @@ class RAMHandler(logging.Handler): else: fmt = self.format lines = [] - for record in self.data: + self.acquire() + try: + records = list(self.data) + finally: + self.release() + for record in records: lines.append(fmt(record)) if html: lines.append('')