Rev 4768: (vila) Avoid UnicodeDecodeError in ``bzr add` on windows (Martin [gz]) in file:///home/pqm/archives/thelove/bzr/2.0/
Canonical.com Patch Queue Manager
pqm at pqm.ubuntu.com
Thu Dec 16 10:44:30 GMT 2010
At file:///home/pqm/archives/thelove/bzr/2.0/
------------------------------------------------------------
revno: 4768 [merge]
revision-id: pqm at pqm.ubuntu.com-20101216104429-qk47pgj62ekxvdhw
parent: pqm at pqm.ubuntu.com-20101202115245-mwioogw6oykdq05n
parent: gzlist at googlemail.com-20101216090141-omn7esycqi97c2fq
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: 2.0
timestamp: Thu 2010-12-16 10:44:29 +0000
message:
(vila) Avoid UnicodeDecodeError in ``bzr add` on windows (Martin [gz])
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/mutabletree.py mutabletree.py-20060906023413-4wlkalbdpsxi2r4y-2
bzrlib/tests/blackbox/test_add.py test_add.py-20060518072250-857e4f86f54a30b2
=== modified file 'NEWS'
--- a/NEWS 2010-12-01 10:44:44 +0000
+++ b/NEWS 2010-12-16 09:01:41 +0000
@@ -25,6 +25,9 @@
Bug Fixes
*********
+* Avoid UnicodeDecodeError in ``bzr add`` with multiple files under a non-ascii
+ path on windows from symlink support addition. (Martin [gz], #686611)
+
Improvements
************
=== modified file 'bzrlib/mutabletree.py'
--- a/bzrlib/mutabletree.py 2010-07-17 17:16:19 +0000
+++ b/bzrlib/mutabletree.py 2010-12-16 09:01:41 +0000
@@ -391,7 +391,9 @@
# expand any symlinks in the directory part, while leaving the
# filename alone
- file_list = map(osutils.normalizepath, file_list)
+ # only expanding if symlinks are supported avoids windows path bugs
+ if osutils.has_symlinks():
+ file_list = map(osutils.normalizepath, file_list)
# validate user file paths and convert all paths to tree
# relative : it's cheaper to make a tree relative path an abspath
=== modified file 'bzrlib/tests/blackbox/test_add.py'
--- a/bzrlib/tests/blackbox/test_add.py 2009-08-10 08:25:05 +0000
+++ b/bzrlib/tests/blackbox/test_add.py 2010-12-09 00:50:57 +0000
@@ -24,7 +24,8 @@
condition_isinstance,
split_suite_by_condition,
multiply_tests,
- SymlinkFeature
+ SymlinkFeature,
+ UnicodeFilename,
)
from bzrlib.tests.blackbox import ExternalBase
from bzrlib.tests.test_win32utils import NeedsGlobExpansionFeature
@@ -239,3 +240,12 @@
os.symlink(osutils.abspath('target'), 'tree/link')
out = self.run_bzr(['add', 'tree/link'])[0]
self.assertEquals(out, 'adding link\n')
+
+ def test_add_multiple_files_in_unicode_cwd(self):
+ """Adding multiple files in a non-ascii cwd, see lp:686611"""
+ self.requireFeature(UnicodeFilename)
+ self.make_branch_and_tree(u"\xA7")
+ self.build_tree([u"\xA7/a", u"\xA7/b"])
+ out, err = self.run_bzr(["add", "a", "b"], working_dir=u"\xA7")
+ self.assertEquals(out, "adding a\n" "adding b\n")
+ self.assertEquals(err, "")
More information about the bazaar-commits
mailing list