Comments
Patch
@@ -797,5 +797,9 @@
$ hg rebase -r . -d 1 --config ui.merge=internal:merge3
rebasing 2:4c5d7dae8fbb "remove the whitespace again" (tip)
merging foo
- abort: foo.orig@1ed8791587a6: not found in manifest!
- [255]
+ hit merge conflicts; re-running rebase without in-memory merge
+ rebasing 2:4c5d7dae8fbb "remove the whitespace again" (tip)
+ merging foo
+ warning: conflicts while merging foo! (edit, then use 'hg resolve --mark')
+ unresolved conflicts (see hg resolve, then hg rebase --continue)
+ [1]
@@ -1826,9 +1826,14 @@
if self._cache[path]['exists']:
if self._cache[path]['data']:
return self._cache[path]['data']
- else:
+ elif path in self._wrappedctx:
# Must fallback here, too, because we only set flags.
return self._wrappedctx[path].data()
+ else:
+ # the file was not present in parent, this can be an empty
+ # backupfile created during merge. Let's return what we have
+ # in cache
+ return self._cache[path]['data']
else:
raise error.ProgrammingError("No such file or directory: %s" %
path)