py3: use bytes.startswith() instead of comparing with bytes[0]
This is because bytes[0] will return the ascii value and comparison will fail.
This makes test-commit-interactive-curses.t pass on Python 3.
Differential Revision: https://phab.mercurial-scm.org/D5879
--- a/contrib/python3-whitelist Fri Feb 08 22:57:26 2019 -0800
+++ b/contrib/python3-whitelist Thu Feb 07 16:44:43 2019 +0300
@@ -89,6 +89,7 @@
test-close-head.t
test-commandserver.t
test-commit-amend.t
+test-commit-interactive-curses.t
test-commit-interactive.t
test-commit-multiple.t
test-commit-unresolved.t
--- a/mercurial/crecord.py Fri Feb 08 22:57:26 2019 -0800
+++ b/mercurial/crecord.py Thu Feb 07 16:44:43 2019 +0300
@@ -377,9 +377,9 @@
def countchanges(self):
"""changedlines -> (n+,n-)"""
add = len([l for l in self.changedlines if l.applied
- and l.prettystr()[0] == '+'])
+ and l.prettystr().startswith('+')])
rem = len([l for l in self.changedlines if l.applied
- and l.prettystr()[0] == '-'])
+ and l.prettystr().startswith('-')])
return add, rem
def getfromtoline(self):
@@ -423,7 +423,7 @@
changedlinestr = changedline.prettystr()
if changedline.applied:
hunklinelist.append(changedlinestr)
- elif changedlinestr[0] == "-":
+ elif changedlinestr.startswith("-"):
hunklinelist.append(" " + changedlinestr[1:])
fp.write(''.join(self.before + hunklinelist + self.after))
@@ -471,11 +471,11 @@
for line in self.changedlines:
text = line.linetext
if line.applied:
- if text[0] == '+':
+ if text.startswith('+'):
dels.append(text[1:])
- elif text[0] == '-':
+ elif text.startswith('-'):
adds.append(text[1:])
- elif text[0] == '+':
+ elif text.startswith('+'):
dels.append(text[1:])
adds.append(text[1:])
hunk = ['-%s' % l for l in dels] + ['+%s' % l for l in adds]