[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff_backup/rpath.py
From: |
Andrew Ferguson |
Subject: |
[Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff_backup/rpath.py |
Date: |
Wed, 17 Dec 2008 23:07:11 +0000 |
CVSROOT: /sources/rdiff-backup
Module name: rdiff-backup
Changes by: Andrew Ferguson <owsla> 08/12/17 23:07:11
Modified files:
. : CHANGELOG
rdiff_backup : rpath.py
Log message:
Fix for crash when deleting read-only files on Windows. (Patch from
Josh Nisly)
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/CHANGELOG?cvsroot=rdiff-backup&r1=1.324&r2=1.325
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/rdiff_backup/rpath.py?cvsroot=rdiff-backup&r1=1.132&r2=1.133
Patches:
Index: CHANGELOG
===================================================================
RCS file: /sources/rdiff-backup/rdiff-backup/CHANGELOG,v
retrieving revision 1.324
retrieving revision 1.325
diff -u -b -r1.324 -r1.325
--- CHANGELOG 24 Nov 2008 22:07:32 -0000 1.324
+++ CHANGELOG 17 Dec 2008 23:07:11 -0000 1.325
@@ -1,6 +1,8 @@
New in v1.2.3 (????/??/??)
---------------------------
+Fix for crash when deleting read-only files on Windows. (Patch from Josh Nisly)
+
Fix for Python 2.2 in win_acls.py (Closes Savannah bug #24922).
Throttle verbosity of listattr() warning messages from 3 to 4. (Andrew
Ferguson)
Index: rdiff_backup/rpath.py
===================================================================
RCS file: /sources/rdiff-backup/rdiff-backup/rdiff_backup/rpath.py,v
retrieving revision 1.132
retrieving revision 1.133
diff -u -b -r1.132 -r1.133
--- rdiff_backup/rpath.py 23 Oct 2008 16:31:09 -0000 1.132
+++ rdiff_backup/rpath.py 17 Dec 2008 23:07:11 -0000 1.133
@@ -261,6 +261,7 @@
raise
# On Windows, files can't be renamed on top of
an existing file
+ rp_source.conn.os.chmod(rp_dest.path, 0700)
rp_source.conn.os.unlink(rp_dest.path)
rp_source.conn.os.rename(rp_source.path,
rp_dest.path)
@@ -1055,7 +1056,17 @@
except os.error:
if Globals.fsync_directories: self.fsync()
self.conn.shutil.rmtree(self.path)
- else: self.conn.os.unlink(self.path)
+ else:
+ try: self.conn.os.unlink(self.path)
+ except OSError, error:
+ if error.errno == errno.EPERM:
+ # On Windows, read-only files cannot be
deleted.
+ # Remove the read-only attribute and
try again.
+ self.chmod(0700)
+ self.conn.os.unlink(self.path)
+ else:
+ raise
+
self.setdata()
def contains_files(self):
- [Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff_backup/rpath.py,
Andrew Ferguson <=