diff -r 8d928799dab5 -r f6a737357195 mercurial/dispatch.py --- a/mercurial/dispatch.py Sun Jul 31 22:12:13 2011 +0200 +++ b/mercurial/dispatch.py Mon Aug 01 10:54:34 2011 -0500 @@ -601,11 +601,15 @@ for cfg in cfgs: req.repo.ui.setconfig(*cfg) - for opt in ('verbose', 'debug', 'quiet', 'traceback'): - val = bool(options[opt]) - if val: + if options['verbose'] or options['debug'] or options['quiet']: + for opt in ('verbose', 'debug', 'quiet'): + val = str(bool(options[opt])) for ui_ in uis: - ui_.setconfig('ui', opt, str(val)) + ui_.setconfig('ui', opt, val) + + if options['traceback']: + for ui_ in uis: + ui_.setconfig('ui', 'traceback', 'on') if options['noninteractive']: for ui_ in uis: