Patchwork D2536: py3: use util.forcebytestr() to convert IOErrors to bytes

login
register
mail settings
Submitter phabricator
Date March 2, 2018, 1:59 a.m.
Message ID <differential-rev-PHID-DREV-a4gsb2ssxfromdb367qf-req@phab.mercurial-scm.org>
Download mbox | patch
Permalink /patch/28656/
State Superseded
Headers show

Comments

phabricator - March 2, 2018, 1:59 a.m.
pulkit 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/D2536

AFFECTED FILES
  hgext/largefiles/remotestore.py

CHANGE DETAILS




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

Patch

diff --git a/hgext/largefiles/remotestore.py b/hgext/largefiles/remotestore.py
--- a/hgext/largefiles/remotestore.py
+++ b/hgext/largefiles/remotestore.py
@@ -52,23 +52,25 @@ 
         except IOError as e:
             raise error.Abort(
                 _('remotestore: could not open file %s: %s')
-                % (filename, str(e)))
+                % (filename, util.forcebytestr(e)))
 
     def _getfile(self, tmpfile, filename, hash):
         try:
             chunks = self._get(hash)
         except urlerr.httperror as e:
             # 401s get converted to error.Aborts; everything else is fine being
             # turned into a StoreError
-            raise basestore.StoreError(filename, hash, self.url, str(e))
+            raise basestore.StoreError(filename, hash, self.url,
+                                       util.forcebytestr(e))
         except urlerr.urlerror as e:
             # This usually indicates a connection problem, so don't
             # keep trying with the other files... they will probably
             # all fail too.
             raise error.Abort('%s: %s' %
                              (util.hidepassword(self.url), e.reason))
         except IOError as e:
-            raise basestore.StoreError(filename, hash, self.url, str(e))
+            raise basestore.StoreError(filename, hash, self.url,
+                                       util.forcebytestr(e))
 
         return lfutil.copyandhash(chunks, tmpfile)