diff --git a/mercurial/rewriteutil.py b/mercurial/rewriteutil.py --- a/mercurial/rewriteutil.py +++ b/mercurial/rewriteutil.py @@ -145,7 +145,7 @@ for r in obsrevs: div = find_new_divergence_from(repo, repo[r]) if div: - return (repo[r], repo[div[0]], repo[div[1]]) + return (repo[r], repo[div[0]], repo.unfiltered()[div[1]]) return None diff --git a/tests/test-amend.t b/tests/test-amend.t --- a/tests/test-amend.t +++ b/tests/test-amend.t @@ -281,10 +281,11 @@ obsoleted 1 changesets $ hg co --hidden $node_B_split2 0 files updated, 0 files merged, 0 files removed, 0 files unresolved -BROKEN: Should not complain about a filtered predecessor +BROKEN: Should not be considered divergence (issue6262) $ hg amend -m 'revived B-split2' - abort: filtered revision '16084da537dd8f84cfdb3055c633772269d62e1b' (known-bad-output !) - [255] + abort: cannot amend 809fe227532f, as that creates content-divergence with c68306a86921, from 16084da537dd (known-bad-output !) + (add --verbose for details or see 'hg help evolution.instability') (known-bad-output !) + [10] #endif Cannot amend public changeset