Mercurial > public > mercurial-scm > hg-stable
diff mercurial/repair.py @ 23939:33d1b81c6ef0 stable
repair._bundle: fix traceback for bad config value
On IRC, rom1dep reported a traceback[1] from setting
experimental.strip-bundle2-version to True. This diff catches
unexpected values and falls back to the non-experimental bundle1
implementation after issuing a warning.
[1] http://gist.tamytro.org/_admin/gists/qXcdQLwtApgy6e3NwWgl
author | Eric Sumner <ericsumner@fb.com> |
---|---|
date | Wed, 21 Jan 2015 15:54:52 -0800 |
parents | b21c2e0ee8a3 |
children | fbc4d550a6ab |
line wrap: on
line diff
--- a/mercurial/repair.py Wed Jan 21 21:47:27 2015 +0100 +++ b/mercurial/repair.py Wed Jan 21 15:54:52 2015 -0800 @@ -17,6 +17,12 @@ repo.ui.config('experimental', 'strip-bundle2-version')) if usebundle2: cgversion = repo.ui.config('experimental', 'strip-bundle2-version') + if cgversion not in changegroup.packermap: + repo.ui.warn(_('unknown strip-bundle2-version value %r; ' + + 'should be one of %r\n') % + (cgversion, sorted(changegroup.packermap.keys()),)) + cgversion = '01' + usebundle2 = False else: cgversion = '01'