Given: A - B - C \ D - E And we graft C onto E it works correctly. A - B - C \ D - E - C' If we then try to graft again C' onto C the cset would be empty, it doesn't create (as expected) a new cset, but still it doesn't print anything more than: "grafting revision C'". In my opinion it should say something like: "Nothing to graft" I've attached a test to reproduce this issue.
Patch proposed in ML: http://thread.gmane.org/gmane.comp.version- control.mercurial.devel/45539
The previous patch was wrong. As mpm suggested, we should detect this case at an earlier stage. I'm going to post another patch asap.
Fixed by http://selenic.com/repo/hg/rev/00276525e2b7 Stefano Tortarolo <stefano.tortarolo@gmail.com> graft: disallow grafting grafted csets in specific situations (issue3091) (please test the fix)
--- Bug imported by bugzilla@serpentine.com 2012-05-12 09:25 EDT --- This bug was previously known as _bug_ 3091 at http://mercurial.selenic.com/bts/issue3091 Imported an attachment (id=1604)