Author: Alex Gaynor <[email protected]>
Branch:
Changeset: r46657:896b00199370
Date: 2011-08-20 03:27 -0500
http://bitbucket.org/pypy/pypy/changeset/896b00199370/
Log: merged upstream
diff --git a/pypy/objspace/std/stringobject.py
b/pypy/objspace/std/stringobject.py
--- a/pypy/objspace/std/stringobject.py
+++ b/pypy/objspace/std/stringobject.py
@@ -924,35 +924,36 @@
for i in range(len(s)):
c = s[i]
- use_bs_char = False # character quoted by backspace
+ if not '\x20' <= c < '\x7f':
+ use_bs_char = False # character quoted by backspace
- if c == '\\' or c == quote:
- bs_char = c
- use_bs_char = True
- elif c == '\t':
- bs_char = 't'
- use_bs_char = True
- elif c == '\r':
- bs_char = 'r'
- use_bs_char = True
- elif c == '\n':
- bs_char = 'n'
- use_bs_char = True
- elif not '\x20' <= c < '\x7f':
- n = ord(c)
- if i != startslice:
- buf.append_slice(s, startslice, i)
- startslice = i + 1
- buf.append('\\x')
- buf.append("0123456789abcdef"[n>>4])
- buf.append("0123456789abcdef"[n&0xF])
+ if c == '\\' or c == quote:
+ bs_char = c
+ use_bs_char = True
+ elif c == '\t':
+ bs_char = 't'
+ use_bs_char = True
+ elif c == '\r':
+ bs_char = 'r'
+ use_bs_char = True
+ elif c == '\n':
+ bs_char = 'n'
+ use_bs_char = True
+ else:
+ n = ord(c)
+ if i != startslice:
+ buf.append_slice(s, startslice, i)
+ startslice = i + 1
+ buf.append('\\x')
+ buf.append("0123456789abcdef"[n>>4])
+ buf.append("0123456789abcdef"[n&0xF])
- if use_bs_char:
- if i != startslice:
- buf.append_slice(s, startslice, i)
- startslice = i + 1
- buf.append('\\')
- buf.append(bs_char)
+ if use_bs_char:
+ if i != startslice:
+ buf.append_slice(s, startslice, i)
+ startslice = i + 1
+ buf.append('\\')
+ buf.append(bs_char)
if len(s) != startslice:
buf.append_slice(s, startslice, len(s))
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit