Patchwork D2342: wireproto: fix lingering str(exception) with util.forcebytestr(exception)

login
register
mail settings
Submitter phabricator
Date Feb. 18, 2018, 8:54 p.m.
Message ID <differential-rev-PHID-DREV-cjjcd54fquddjxnbqltr-req@phab.mercurial-scm.org>
Download mbox | patch
Permalink /patch/28129/
State Superseded
Headers show

Comments

phabricator - Feb. 18, 2018, 8:54 p.m.
durin42 created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D2342

AFFECTED FILES
  mercurial/wireproto.py

CHANGE DETAILS




To: durin42, #hg-reviewers
Cc: mercurial-devel

Patch

diff --git a/mercurial/wireproto.py b/mercurial/wireproto.py
--- a/mercurial/wireproto.py
+++ b/mercurial/wireproto.py
@@ -927,7 +927,7 @@ 
         r = c.hex()
         success = 1
     except Exception as inst:
-        r = str(inst)
+        r = util.forcebytestr(inst)
         success = 0
     return bytesresponse('%d %s\n' % (success, r))
 
@@ -1055,12 +1055,13 @@ 
                 if exc.params:
                     errpart.addparam('params', '\0'.join(exc.params))
             except error.Abort as exc:
-                manargs = [('message', str(exc))]
+                manargs = [('message', util.forcebytestr(exc))]
                 advargs = []
                 if exc.hint is not None:
                     advargs.append(('hint', exc.hint))
                 bundler.addpart(bundle2.bundlepart('error:abort',
                                                    manargs, advargs))
             except error.PushRaced as exc:
-                bundler.newpart('error:pushraced', [('message', str(exc))])
+                bundler.newpart('error:pushraced',
+                                [('message', util.forcebytestr(exc))])
             return streamres_legacy(gen=bundler.getchunks())