changeset 10044:dc5462d94a72

Merge with stable
author Martin Geisler <mg@lazybytes.net>
date Sat, 12 Dec 2009 16:54:33 +0100
parents e95f0f70c3fd (current diff) 7cdd2a7db2c2 (diff)
children d1f9640e9a67
files tests/test-hgrc tests/test-hgrc.out
diffstat 3 files changed, 11 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/config.py	Sat Dec 12 15:26:57 2009 +0100
+++ b/mercurial/config.py	Sat Dec 12 16:54:33 2009 +0100
@@ -100,7 +100,13 @@
                 base = os.path.dirname(src)
                 inc = os.path.normpath(os.path.join(base, inc))
                 if include:
-                    include(inc, remap=remap, sections=sections)
+                    try:
+                        include(inc, remap=remap, sections=sections)
+                    except IOError, inst:
+                        msg = _("config error at %s:%d: "
+                                "cannot include %s (%s)") \
+                            % (src, line, inc, inst.strerror)
+                        raise error.ConfigError(msg)
                 continue
             if emptyre.match(l):
                 continue
--- a/tests/test-hgrc	Sat Dec 12 15:26:57 2009 +0100
+++ b/tests/test-hgrc	Sat Dec 12 16:54:33 2009 +0100
@@ -18,3 +18,6 @@
 echo '[foo]' > $HGRCPATH
 echo '  x = y' >> $HGRCPATH
 hg version 2>&1 | sed -e "s|$HGRCPATH|\$HGRCPATH|"
+
+echo '%include /no-such-file' > $HGRCPATH
+hg version 2>&1 | sed -e "s|$HGRCPATH|\$HGRCPATH|"
--- a/tests/test-hgrc.out	Sat Dec 12 15:26:57 2009 +0100
+++ b/tests/test-hgrc.out	Sat Dec 12 16:54:33 2009 +0100
@@ -7,3 +7,4 @@
 bundle.mainreporoot=.../foobar
 paths.default=.../foo%bar
 hg: config error at $HGRCPATH:2: '  x = y'
+hg: config error at $HGRCPATH:1: cannot include /no-such-file (No such file or directory)