[Python-checkins] r42070 - python/branches/release24-maint/Lib/logging/handlers.py

vinay.sajip python-checkins at python.org
Mon Jan 16 10:29:00 CET 2006


Author: vinay.sajip
Date: Mon Jan 16 10:28:59 2006
New Revision: 42070

Modified:
   python/branches/release24-maint/Lib/logging/handlers.py
Log:
Exceptions raised during renaming in rotating file handlers are now passed to handleError (except for SystemExit and KeyboardInterrupt, which are re-raised).

Modified: python/branches/release24-maint/Lib/logging/handlers.py
==============================================================================
--- python/branches/release24-maint/Lib/logging/handlers.py	(original)
+++ python/branches/release24-maint/Lib/logging/handlers.py	Mon Jan 16 10:28:59 2006
@@ -126,7 +126,12 @@
             dfn = self.baseFilename + ".1"
             if os.path.exists(dfn):
                 os.remove(dfn)
-            os.rename(self.baseFilename, dfn)
+            try:
+                os.rename(self.baseFilename, dfn)
+            except (KeyboardInterrupt, SystemExit):
+                raise
+            except:
+                self.handleError(record)
             #print "%s -> %s" % (self.baseFilename, dfn)
         if self.encoding:
             self.stream = codecs.open(self.baseFilename, 'w', self.encoding)
@@ -270,7 +275,12 @@
         dfn = self.baseFilename + "." + time.strftime(self.suffix, timeTuple)
         if os.path.exists(dfn):
             os.remove(dfn)
-        os.rename(self.baseFilename, dfn)
+        try:
+            os.rename(self.baseFilename, dfn)
+        except (KeyboardInterrupt, SystemExit):
+            raise
+        except:
+            self.handleError(record)
         if self.backupCount > 0:
             # find the oldest log file and delete it
             s = glob.glob(self.baseFilename + ".20*")


More information about the Python-checkins mailing list