diff --git a/pytools/log.py b/pytools/log.py
index 3e3a88dbb969b2ec9ab281e315ae0f43a6e49cfb..4a78699a4685aff1a72e0cdb947b8b919f20c6ff 100644
--- a/pytools/log.py
+++ b/pytools/log.py
@@ -372,11 +372,15 @@ class LogManager(object):
                     unit, description, loads(def_agg))
 
     def close(self):
+        if self.old_showwarning is not None:
+            self.capture_warnings(False)
+
         self.save()
 
         if self.db_conn is not None:
             self.db_conn.close()
 
+
     def get_table(self, q_name):
         if q_name not in self.quantity_data:
             raise KeyError, "invalid quantity name '%s'" % q_name