]> arthur.barton.de Git - bup.git/blobdiff - lib/bup/helpers.py
Context manage connections (via BaseConn)
[bup.git] / lib / bup / helpers.py
index fdc683bd7c2ca739699e760a0b1eda5c3a8f156d..28d1c6d3595b612f17cfb14decadb0279ee4b8b9 100644 (file)
@@ -459,7 +459,13 @@ class BaseConn:
 
     def close(self):
         self._base_closed = True
-        while self._read(65536): pass
+
+    def __enter__(self):
+        return self
+
+    def __exit__(self, exc_type, exc_value, tb):
+        with pending_raise(exc_value, rethrow=False):
+            self.close()
 
     def __del__(self):
         assert self._base_closed