Rev 4873: (vila) Merge 2.0 into 2.1 to pick up fix for lp:686611 (Martin [gz]) in file:///home/pqm/archives/thelove/bzr/2.1/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Thu Dec 16 15:49:22 GMT 2010


At file:///home/pqm/archives/thelove/bzr/2.1/

------------------------------------------------------------
revno: 4873 [merge]
revision-id: pqm at pqm.ubuntu.com-20101216154920-v9fy0t1arawtkdli
parent: pqm at pqm.ubuntu.com-20101202124819-ngzgrzv153115u0i
parent: gzlist at googlemail.com-20101216145903-dbhnk3ns9ceed0ux
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: 2.1
timestamp: Thu 2010-12-16 15:49:20 +0000
message:
  (vila) Merge 2.0 into 2.1 to pick up fix for lp:686611 (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-02 09:20:16 +0000
+++ b/NEWS	2010-12-16 14:59:03 +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)
+
 * Skip tests that needs a bzr source tree when there isn't one. This is
   needed to succesfully run the test suite for installed versions.
   (Vincent Ladeuil, #644855).
@@ -154,6 +157,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-08-16 01:50:12 +0000
+++ b/bzrlib/mutabletree.py	2010-12-16 14:59:03 +0000
@@ -395,7 +395,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	2010-02-17 17:11:16 +0000
+++ b/bzrlib/tests/blackbox/test_add.py	2010-12-16 14:59:03 +0000
@@ -24,7 +24,8 @@
     condition_isinstance,
     split_suite_by_condition,
     multiply_tests,
-    SymlinkFeature
+    SymlinkFeature,
+    UnicodeFilename,
     )
 from bzrlib.tests.blackbox import ExternalBase
 
@@ -224,3 +225,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