From 8597a3c83573184c387e7e2dcdc19e8d28e77e8d Mon Sep 17 00:00:00 2001 From: Tom Pinckney Date: Sun, 29 Sep 2024 11:28:30 -0400 Subject: [PATCH] PlyLogger: add finalizer to close open file --- src/ply/yacc.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/ply/yacc.py b/src/ply/yacc.py index 6528796..ecf6384 100644 --- a/src/ply/yacc.py +++ b/src/ply/yacc.py @@ -102,6 +102,10 @@ def warning(self, msg, *args, **kwargs): def error(self, msg, *args, **kwargs): self.f.write('ERROR: ' + (msg % args) + '\n') + def __del__(self): + if self.f != sys.stderr: + self.f.close() + critical = debug # Null logger is used when no output is generated. Does nothing.