← Back to team overview

duplicity-team team mailing list archive

[Merge] lp:~mterry/duplicity/enotconn into lp:duplicity

 

Michael Terry has proposed merging lp:~mterry/duplicity/enotconn into lp:duplicity.

Requested reviews:
  duplicity-team (duplicity-team)
Related bugs:
  Bug #794576 in Duplicity: "Transport endpoint is not connected"
  https://bugs.launchpad.net/duplicity/+bug/794576

For more details, see:
https://code.launchpad.net/~mterry/duplicity/enotconn/+merge/67227

This fixes bug 794576 "Transport endpoint is not connected" which can happen when the gvfs daemon dies unexpectedly.

I was originally going to have duplicity not bother scanning files that were excluded, but then realized that it's probably even better just to be able to handle this error more gracefully.  So I added ENOTCONN to the list of ignored errors when lstat'ing (and shortened the line to fit in 80 chars).
-- 
https://code.launchpad.net/~mterry/duplicity/enotconn/+merge/67227
Your team duplicity-team is requested to review the proposed merge of lp:~mterry/duplicity/enotconn into lp:duplicity.
=== modified file 'duplicity/path.py'
--- duplicity/path.py	2011-06-12 11:17:21 +0000
+++ duplicity/path.py	2011-07-07 17:14:28 +0000
@@ -493,7 +493,7 @@
             self.stat = os.lstat(self.name)
         except OSError, e:
             err_string = errno.errorcode[e[0]]
-            if err_string == "ENOENT" or err_string == "ENOTDIR" or err_string == "ELOOP":
+            if err_string in ["ENOENT", "ENOTDIR", "ELOOP", "ENOTCONN"]:
                 self.stat, self.type = None, None # file doesn't exist
                 self.mode = None
             else:


Follow ups