Rev 2493: do not update_entry from disk if it is supposed to be absent or renamed in http://bzr.arbash-meinel.com/branches/bzr/experimental/dirstate-nohc
John Arbash Meinel
john at arbash-meinel.com
Fri Mar 2 00:27:13 GMT 2007
At http://bzr.arbash-meinel.com/branches/bzr/experimental/dirstate-nohc
------------------------------------------------------------
revno: 2493
revision-id: john at arbash-meinel.com-20070302002706-xz1pf69mu3tk9ud8
parent: john at arbash-meinel.com-20070302000729-5qybyk0c6aldecpj
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: dirstate-nohc
timestamp: Thu 2007-03-01 18:27:06 -0600
message:
do not update_entry from disk if it is supposed to be absent or renamed
and make sure to use the current target_details afterwards
in case something has changed.
modified:
bzrlib/workingtree_4.py workingtree_4.py-20070208044105-5fgpc5j3ljlh5q6c-1
-------------- next part --------------
=== modified file 'bzrlib/workingtree_4.py'
--- a/bzrlib/workingtree_4.py 2007-03-02 00:07:29 +0000
+++ b/bzrlib/workingtree_4.py 2007-03-02 00:27:06 +0000
@@ -1602,14 +1602,18 @@
source_details = NULL_PARENT_DETAILS
else:
source_details = entry[1][source_index]
- if path_info is not None:
+ target_details = entry[1][target_index]
+ target_minikind = target_details[0]
+ if path_info is not None and target_minikind not in 'ar':
+ assert target_index == 0
link_or_sha1 = state.update_entry(entry, abspath=path_info[4],
stat_value=path_info[3])
+ # The entry may have been modified by update_entry
+ target_details = entry[1][target_index]
+ target_minikind = target_details[0]
else:
link_or_sha1 = None
- target_details = entry[1][target_index]
source_minikind = source_details[0]
- target_minikind = target_details[0]
if source_minikind in 'fdlr' and target_minikind in 'fdl':
# claimed content in both: diff
# r | fdl | | add source to search, add id path move and perform
More information about the bazaar-commits
mailing list