D4043: absorb: avoid mutable default arg

durin42 (Augie Fackler) phabricator at mercurial-scm.org
Wed Aug 1 22:47:24 UTC 2018


durin42 created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D4043

AFFECTED FILES
  hgext/absorb.py

CHANGE DETAILS

diff --git a/hgext/absorb.py b/hgext/absorb.py
--- a/hgext/absorb.py
+++ b/hgext/absorb.py
@@ -126,7 +126,7 @@
     result.reverse()
     return result
 
-def getfilestack(stack, path, seenfctxs=set()):
+def getfilestack(stack, path, seenfctxs=None):
     """([ctx], str, set) -> [fctx], {ctx: fctx}
 
     stack is a list of contexts, from old to new. usually they are what
@@ -163,6 +163,8 @@
     - if stack = [6, 7], returns ([1, 2], {6: 1, 7: 2}), although {6: 1} can be
       removed, since 1 is immutable.
     """
+    if seenfctxs is None:
+        seenfctxs = set()
     assert stack
 
     if path not in stack[-1]:



To: durin42, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list