diff options
author | owsla <owsla@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109> | 2008-01-06 02:13:22 +0000 |
---|---|---|
committer | owsla <owsla@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109> | 2008-01-06 02:13:22 +0000 |
commit | f2145790f9d58b85537c9b0f3cbcfaf7fd34fb38 (patch) | |
tree | 29759f5549909d9c5dbb467f5472a47ab2b839f8 | |
parent | 6b6645d7faaa76d48ea4f6da1dfe346755b91c3f (diff) | |
download | rdiff-backup-f2145790f9d58b85537c9b0f3cbcfaf7fd34fb38.tar.gz |
Recover from EBADF during fsync(). Closes Savannah bug #15839
git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup/trunk@868 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
-rw-r--r-- | rdiff-backup/CHANGELOG | 4 | ||||
-rw-r--r-- | rdiff-backup/rdiff_backup/rpath.py | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/rdiff-backup/CHANGELOG b/rdiff-backup/CHANGELOG index 645b787..36193fb 100644 --- a/rdiff-backup/CHANGELOG +++ b/rdiff-backup/CHANGELOG @@ -1,6 +1,10 @@ New in v1.1.16 (????/??/??) --------------------------- +Add EBADF to the list of recoverable errors when fsync() is called. This +fixes an rdiff-backup error on AIX and IRIX. Closes Savannah bug #15839. +(Fix from Peter O'Gorman) + Properly initialize new QuotedRPaths. Fixes --list-at-time, etc. when the target is remote. (Andrew Ferguson) diff --git a/rdiff-backup/rdiff_backup/rpath.py b/rdiff-backup/rdiff_backup/rpath.py index dbb49f6..b33bf14 100644 --- a/rdiff-backup/rdiff_backup/rpath.py +++ b/rdiff-backup/rdiff_backup/rpath.py @@ -1181,7 +1181,7 @@ class RPath(RORPath): os.close(fd) except OSError, e: if locals().has_key('fd'): os.close(fd) - if (e.errno != errno.EPERM and e.errno != errno.EACCES) \ + if (e.errno not in (errno.EPERM, errno.EACCES, errno.EBADF)) \ or self.isdir(): raise # Maybe the system doesn't like read-only fsyncing. |