[gerrit] Fix encoding in ChangeEdit
gerrit_util.ChangeEdit was passing the result of b64encode into a %s
format, which was printing the contents with a bytes prefix (b'...').
Decode the bytes object back to a str object before passing it to '%s'
Bug: v8:12849
Change-Id: I8b54b427bbbe8b914444d7486b5a8afbd743de70
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/3683382
Reviewed-by: Aravind Vasudevan <aravindvasudev@google.com>
Commit-Queue: Aravind Vasudevan <aravindvasudev@google.com>
Auto-Submit: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Gavin Mak <gavinmak@google.com>
diff --git a/gerrit_util.py b/gerrit_util.py
index 429e1de..d4ce895 100644
--- a/gerrit_util.py
+++ b/gerrit_util.py
@@ -775,7 +775,8 @@
path = 'changes/%s/edit/%s' % (change, urllib.parse.quote(path, ''))
body = {
'binary_content':
- 'data:text/plain;base64,%s' % base64.b64encode(data.encode('utf-8'))
+ 'data:text/plain;base64,%s' %
+ base64.b64encode(data.encode('utf-8')).decode('utf-8')
}
conn = CreateHttpConn(host, path, reqtype='PUT', body=body)
return ReadHttpJsonResponse(conn, accept_statuses=(204, 409))