diff mercurial/commands.py @ 13576:edd06611a7c6

ui: yield unchanged values in walkconfig Ever since walkconfig was introduced back in 25e7ea0f2cff, the values yielded has been mutated by replacing "\n" with "\\n". This makes walkconfig less useful than it could and there is no other way to iterate over all config sections. The third-party reposettings extension used ui.walkconfig but did not take the replacement into account -- this change will actually fix a bug in the extension when a value contains a newline.
author Martin Geisler <mg@aragost.com>
date Thu, 10 Mar 2011 16:49:37 +0100
parents 0b79cf616e65
children 2e80d495592a
line wrap: on
line diff
--- a/mercurial/commands.py	Thu Mar 10 13:43:47 2011 +0100
+++ b/mercurial/commands.py	Thu Mar 10 16:49:37 2011 +0100
@@ -1175,6 +1175,7 @@
         if len(items) > 1 or items and sections:
             raise util.Abort(_('only one config item permitted'))
     for section, name, value in ui.walkconfig(untrusted=untrusted):
+        value = str(value).replace('\n', '\\n')
         sectname = section + '.' + name
         if values:
             for v in values: