##// END OF EJS Templates
convert: fix crash when filemap filtering is changed
Mads Kiilerich -
r19862:42455ebb default
parent child Browse files
Show More
@@ -231,8 +231,8 b' class filemap_source(converter_source):'
231 continue
231 continue
232 self.seenchildren[r] = self.seenchildren.get(r, 0) + 1
232 self.seenchildren[r] = self.seenchildren.get(r, 0) + 1
233 if self.seenchildren[r] == self.children[r]:
233 if self.seenchildren[r] == self.children[r]:
234 del self.wantedancestors[r]
234 self.wantedancestors.pop(r, None)
235 del self.parentmap[r]
235 self.parentmap.pop(r, None)
236 del self.seenchildren[r]
236 del self.seenchildren[r]
237 if self._rebuilt:
237 if self._rebuilt:
238 del self.children[r]
238 del self.children[r]
@@ -281,7 +281,11 b' class filemap_source(converter_source):'
281 # of wanted ancestors of its parents. Plus rev itself.
281 # of wanted ancestors of its parents. Plus rev itself.
282 wrev = set()
282 wrev = set()
283 for p in parents:
283 for p in parents:
284 wrev.update(self.wantedancestors[p])
284 if p in self.wantedancestors:
285 wrev.update(self.wantedancestors[p])
286 else:
287 self.ui.warn(_('warning: %s parent %s is missing\n') %
288 (rev, p))
285 wrev.add(rev)
289 wrev.add(rev)
286 self.wantedancestors[rev] = wrev
290 self.wantedancestors[rev] = wrev
287
291
@@ -88,6 +88,32 b' final file versions in this repo:'
88 copied renamed from foo:2ed2a3912a0b24502043eae84ee4b279c18b90dd
88 copied renamed from foo:2ed2a3912a0b24502043eae84ee4b279c18b90dd
89
89
90 $ cd ..
90 $ cd ..
91
92
93 Test interaction with startrev and verify that changing it is handled properly:
94
95 $ > empty
96 $ hg convert --filemap empty source movingstart --config convert.hg.startrev=3 -r4
97 initializing destination movingstart repository
98 scanning source...
99 sorting...
100 converting...
101 1 3: change bar quux
102 0 4: first merge; change bar baz
103 $ hg convert --filemap empty source movingstart
104 scanning source...
105 sorting...
106 converting...
107 3 5: change bar baz quux
108 2 6: change foo baz
109 1 7: second merge; change bar
110 warning: af455ce4166b3c9c88e6309c2b9332171dcea595 parent 61e22ca76c3b3e93df20338c4e02ce286898e825 is missing
111 warning: cf908b3eeedc301c9272ebae931da966d5b326c7 parent 59e1ab45c888289513b7354484dac8a88217beab is missing
112 0 8: change foo
113
114
115 splitrepo tests
116
91 $ splitrepo()
117 $ splitrepo()
92 > {
118 > {
93 > msg="$1"
119 > msg="$1"
General Comments 0
You need to be logged in to leave comments. Login now