Rev 4816: 2.1.0b4-update-by-delta bug was accepted, add NEWS entry. in http://bazaar.launchpad.net/~jameinel/bzr/2.1.0b4-win32-accepted

John Arbash Meinel john at arbash-meinel.com
Mon Nov 16 20:50:48 GMT 2009


At http://bazaar.launchpad.net/~jameinel/bzr/2.1.0b4-win32-accepted

------------------------------------------------------------
revno: 4816 [merge]
revision-id: john at arbash-meinel.com-20091116205041-a7iex3ck3miwdm32
parent: john at arbash-meinel.com-20091116204901-2ybzsg97u89xjbjo
parent: john at arbash-meinel.com-20091108192902-23k31cnw85v6drg1
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: 2.1.0b4-win32-accepted
timestamp: Mon 2009-11-16 14:50:41 -0600
message:
  2.1.0b4-update-by-delta bug was accepted, add NEWS entry.
modified:
  NEWS                           NEWS-20050323055033-4e00b5db738777ff
  bzrlib/dirstate.py             dirstate.py-20060728012006-d6mvoihjb3je9peu-1
-------------- next part --------------
=== modified file 'NEWS'
--- a/NEWS	2009-11-16 20:45:52 +0000
+++ b/NEWS	2009-11-16 20:50:41 +0000
@@ -19,6 +19,10 @@
 
 Bug Fixes
 *********
+* After renaming a file, the dirstate could accidentally reference
+  ``source\\path`` rather than ``source/path`` on Windows. This might be a
+  source of some dirstate-related failures. (John Arbash Meinel)
+
 * Lots of bugfixes for the test suite on Windows. We should once again
   have a test suite with no failures on Windows. (Once all the patches
   have landed, remove this line.) (John Arbash Meinel)

=== modified file 'bzrlib/dirstate.py'
--- a/bzrlib/dirstate.py	2009-10-02 05:43:41 +0000
+++ b/bzrlib/dirstate.py	2009-11-08 19:29:02 +0000
@@ -1339,14 +1339,14 @@
                     minikind = child[1][0][0]
                     fingerprint = child[1][0][4]
                     executable = child[1][0][3]
-                    old_child_path = osutils.pathjoin(child[0][0],
-                                                      child[0][1])
+                    old_child_path = osutils.pathjoin(child_dirname,
+                                                      child_basename)
                     removals[child[0][2]] = old_child_path
                     child_suffix = child_dirname[len(old_path):]
                     new_child_dirname = (new_path + child_suffix)
                     key = (new_child_dirname, child_basename, child[0][2])
-                    new_child_path = os.path.join(new_child_dirname,
-                                                  child_basename)
+                    new_child_path = osutils.pathjoin(new_child_dirname,
+                                                      child_basename)
                     insertions[child[0][2]] = (key, minikind, executable,
                                                fingerprint, new_child_path)
         self._check_delta_ids_absent(new_ids, delta, 0)



More information about the bazaar-commits mailing list