summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2015-12-12 14:54:03 +0100
committerLars Wirzenius <liw@liw.fi>2015-12-12 14:56:20 +0100
commit10262135b0659806a12b7c955013d39f5df8aec5 (patch)
treecb7b17ef88fe3634070d0c2976d81cbede8d3e57
parent1718b2284344ebd7ae577963a880d32f1c0cf8f8 (diff)
downloadobnam-10262135b0659806a12b7c955013d39f5df8aec5.tar.gz
Do not ignore EPIPE in backup
Ignoring EPIPE caused a closed SSH connection to be ignored, leading to repeated reading from the now-closed connection. Forever. And ever. And ever.
-rw-r--r--debian/changelog8
-rw-r--r--obnamlib/plugins/backup_plugin.py2
2 files changed, 9 insertions, 1 deletions
diff --git a/debian/changelog b/debian/changelog
index f2b11025..adc98d56 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+obnam (1.19) UNRELEASED; urgency=medium
+
+ * New upstream version
+ * Fix "ignored Broken Pipe exception" <explain what you changed and
+ why> (Closes: #679940)
+
+ -- Lars Wirzenius <liw@liw.fi> Sat, 12 Dec 2015 14:55:30 +0100
+
obnam (1.18.2-1) unstable; urgency=medium
* New upstream release. Closes:
diff --git a/obnamlib/plugins/backup_plugin.py b/obnamlib/plugins/backup_plugin.py
index 7e0f771e..f9cdac47 100644
--- a/obnamlib/plugins/backup_plugin.py
+++ b/obnamlib/plugins/backup_plugin.py
@@ -404,7 +404,7 @@ class BackupPlugin(obnamlib.ObnamPlugin):
self.progress.error(msg, exc=e)
if not existed and not self.pretend:
self.remove_partially_backed_up_file(pathname)
- if e.errno == errno.ENOSPC:
+ if e.errno in (errno.ENOSPC, errno.EPIPE):
raise
if self.checkpoint_manager.time_for_checkpoint():