From 92923fdbc4bc0b8599403a9f252abc58b03228c4 Mon Sep 17 00:00:00 2001 From: Scott Kitterman Date: Wed, 14 Feb 2018 07:20:54 -0500 Subject: [PATCH] Refactor ExceptHook to get rid of archaic string usage and restore reporting to stderr. --- dkimpy_milter/util.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/dkimpy_milter/util.py b/dkimpy_milter/util.py index 4ef6e55..0c80ff6 100644 --- a/dkimpy_milter/util.py +++ b/dkimpy_milter/util.py @@ -51,7 +51,6 @@ def drop_privileges(milterconfig): old_umask = os.umask(milterconfig.get('UMask')) ################# -# FIXME - still uses string, refactor class ExceptHook: def __init__(self, useSyslog = 1, useStderr = 0): self.useSyslog = useSyslog @@ -59,14 +58,14 @@ class ExceptHook: def __call__(self, etype, evalue, etb): import traceback - import string + import sys tb = traceback.format_exception(*(etype, evalue, etb)) - tb = map(string.rstrip, tb) - tb = string.join(tb, '\n') - for line in string.split(tb, '\n'): + for line in tb: if self.useSyslog: import syslog syslog.syslog(line) + if self.useStderr: + sys.stderr.write(line) ####################