mercurial/util.py
branchstable
changeset 42641 b5092c23ca35
parent 42538 2db96bf84a8f
child 42766 e94c8f584ee2
--- a/mercurial/util.py	Mon Jul 22 09:55:05 2019 -0700
+++ b/mercurial/util.py	Sun Jul 21 18:04:05 2019 -0700
@@ -3173,10 +3173,13 @@
     def __init__(self, map, skip=None):
         self._dirs = {}
         addpath = self.addpath
-        if safehasattr(map, 'iteritems') and skip is not None:
+        if isinstance(map, dict) and skip is not None:
             for f, s in map.iteritems():
                 if s[0] != skip:
                     addpath(f)
+        elif skip is not None:
+            raise error.ProgrammingError("skip character is only supported "
+                                         "with a dict source")
         else:
             for f in map:
                 addpath(f)