D4229: patchbomb: don't unintentionally duplicate headers
durin42 (Augie Fackler)
phabricator at mercurial-scm.org
Fri Aug 10 02:06:59 UTC 2018
durin42 created this revision.
Herald added a reviewer: pulkit.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REVISION SUMMARY
This dict-like of headers is only mostly dict-like: if you set a key
that already exists, you it appends another value, rather than
replacing the one that was already present.
This fixes test-patchbomb-bookmark.t on Python 3.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D4229
AFFECTED FILES
contrib/python3-whitelist
hgext/patchbomb.py
CHANGE DETAILS
diff --git a/hgext/patchbomb.py b/hgext/patchbomb.py
--- a/hgext/patchbomb.py
+++ b/hgext/patchbomb.py
@@ -789,12 +789,19 @@
# TODO(durin42): this should probably be cleaned up above in the future.
if pycompat.ispy3:
for hdr, val in list(m.items()):
+ change = False
if isinstance(hdr, bytes):
del m[hdr]
hdr = pycompat.strurl(hdr)
+ change = True
if isinstance(val, bytes):
val = pycompat.strurl(val)
- m[hdr] = val
+ if not change:
+ # prevent duplicate headers
+ del m[hdr]
+ change = True
+ if change:
+ m[hdr] = val
if opts.get('test'):
ui.status(_('displaying '), subj, ' ...\n')
ui.pager('email')
diff --git a/contrib/python3-whitelist b/contrib/python3-whitelist
--- a/contrib/python3-whitelist
+++ b/contrib/python3-whitelist
@@ -363,6 +363,7 @@
test-parseindex2.py
test-patch-offset.t
test-patch.t
+test-patchbomb-bookmark.t
test-patchbomb-tls.t
test-pathconflicts-merge.t
test-pathconflicts-update.t
To: durin42, pulkit, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list