diff --git a/hgext/zeroconf/__init__.py b/hgext/zeroconf/__init__.py --- a/hgext/zeroconf/__init__.py +++ b/hgext/zeroconf/__init__.py @@ -163,8 +163,8 @@ def config(orig, self, section, key, def return path return orig(self, section, key, default, untrusted) -def configitems(orig, self, section, untrusted=False): - repos = orig(self, section, untrusted) +def configitems(orig, self, section, *args, **kwargs): + repos = orig(self, section, *args, **kwargs) if section == "paths": repos += getzcpaths() return repos diff --git a/tests/test-paths.t b/tests/test-paths.t --- a/tests/test-paths.t +++ b/tests/test-paths.t @@ -97,6 +97,14 @@ password should be masked in plain outpu } ] +zeroconf wraps ui.configitems(), which shouldn't crash at least: + + $ hg paths --config extensions.zeroconf= + dupe = $TESTTMP/b#tip (glob) + dupe:pushurl = https://example.com/dupe + expand = $TESTTMP/a/$SOMETHING/bar (glob) + insecure = http://foo:***@example.com/ + $ cd .. sub-options for an undeclared path are ignored