diff --git a/mercurial/obsolete.py b/mercurial/obsolete.py --- a/mercurial/obsolete.py +++ b/mercurial/obsolete.py @@ -1016,7 +1016,7 @@ def createmarkers(repo, relations, flag= if saveeffectflag: # The effect flag is saved in a versioned field name for future # evolution - effectflag = obsutil.geteffectflag(rel) + effectflag = obsutil.geteffectflag(prec, sucs) localmetadata[obsutil.EFFECTFLAGFIELD] = "%d" % effectflag # Creating the marker causes the hidden cache to become invalid, diff --git a/mercurial/obsutil.py b/mercurial/obsutil.py --- a/mercurial/obsutil.py +++ b/mercurial/obsutil.py @@ -413,15 +413,13 @@ def _cmpdiff(leftctx, rightctx): return False return True -def geteffectflag(relation): +def geteffectflag(source, successors): """ From an obs-marker relation, compute what changed between the predecessor and the successor. """ effects = 0 - source = relation[0] - - for changectx in relation[1]: + for changectx in successors: # Check if description has changed if changectx.description() != source.description(): effects |= DESCCHANGED