templater: remove a mutable default argument
authorPierre-Yves David <pierre-yves.david@fb.com>
Thu, 24 Sep 2015 01:06:10 -0700
changeset 26332 66221730d372
parent 26331 2c6a741bf05e
child 26333 727d57e94cda
templater: remove a mutable default argument Mutable default arguments are know to the state of California to cause bugs.
mercurial/templater.py
--- a/mercurial/templater.py	Thu Sep 24 01:05:21 2015 -0700
+++ b/mercurial/templater.py	Thu Sep 24 01:06:10 2015 -0700
@@ -833,12 +833,14 @@
 
 class templater(object):
 
-    def __init__(self, mapfile, filters={}, defaults={}, cache={},
+    def __init__(self, mapfile, filters=None, defaults={}, cache={},
                  minchunk=1024, maxchunk=65536):
         '''set up template engine.
         mapfile is name of file to read map definitions from.
         filters is dict of functions. each transforms a value into another.
         defaults is dict of default map definitions.'''
+        if filters is None:
+            filters = {}
         self.mapfile = mapfile or 'template'
         self.cache = cache.copy()
         self.map = {}