[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff_backup/FilenameMap..
From: |
dean gaudet |
Subject: |
[Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff_backup/FilenameMap... |
Date: |
Sun, 28 Jan 2007 02:49:02 +0000 |
CVSROOT: /cvsroot/rdiff-backup
Module name: rdiff-backup
Changes by: dean gaudet <dgaudet> 07/01/28 02:49:02
Modified files:
. : CHANGELOG
rdiff_backup : FilenameMapping.py
Log message:
Escape DOS device filenames when necessary. [Marc Dyksterhouse]
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/CHANGELOG?cvsroot=rdiff-backup&r1=1.193&r2=1.194
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/rdiff_backup/FilenameMapping.py?cvsroot=rdiff-backup&r1=1.9&r2=1.10
Patches:
Index: CHANGELOG
===================================================================
RCS file: /cvsroot/rdiff-backup/rdiff-backup/CHANGELOG,v
retrieving revision 1.193
retrieving revision 1.194
diff -u -b -r1.193 -r1.194
--- CHANGELOG 28 Jan 2007 02:47:01 -0000 1.193
+++ CHANGELOG 28 Jan 2007 02:49:01 -0000 1.194
@@ -12,6 +12,8 @@
Add "FilenameMapping.set_init_quote_vals" security exception.
[Marc Dyksterhouse]
+Escape DOS device filenames when necessary. [Marc Dyksterhouse]
+
New in v1.1.7 (2006/11/12)
--------------------------
Index: rdiff_backup/FilenameMapping.py
===================================================================
RCS file: /cvsroot/rdiff-backup/rdiff-backup/rdiff_backup/FilenameMapping.py,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- rdiff_backup/FilenameMapping.py 23 Nov 2005 23:16:32 -0000 1.9
+++ rdiff_backup/FilenameMapping.py 28 Jan 2007 02:49:01 -0000 1.10
@@ -83,7 +83,17 @@
the quoting character.
"""
- return chars_to_quote_regexp.sub(quote_single, path)
+ QuotedPath = chars_to_quote_regexp.sub(quote_single, path)
+ if not Globals.must_escape_dos_devices:
+ return QuotedPath
+
+ # Escape first char of any special DOS device files even if filename
has an
+ # extension. Special names are: aux, prn, con, nul, com0-9, and lpt1-2.
+ if not
re.search(r"^aux(\..*)*$|^prn(\..*)*$|^con(\..*)*$|^nul(\..*)*$|" \
+
r"^com[0-9](\..*)*$|^lpt[12]{1}(\..*)*$", QuotedPath, \
+ re.I):
+ return QuotedPath
+ return "%s%03d" % (quoting_char, ord(QuotedPath[0])) + QuotedPath[1:]
def quote_single(match):
"""Return replacement for a single character"""
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff_backup/FilenameMap...,
dean gaudet <=