[Python-checkins] cpython: faulthandler: enhance dump_ascii() to escape also non-printable ASCII
victor.stinner
python-checkins at python.org
Fri Oct 3 14:18:16 CEST 2014
https://hg.python.org/cpython/rev/f96b8be9e823
changeset: 92768:f96b8be9e823
user: Victor Stinner <victor.stinner at gmail.com>
date: Fri Oct 03 14:18:09 2014 +0200
summary:
faulthandler: enhance dump_ascii() to escape also non-printable ASCII
characters (U+0000..U+001f and U+007f).
files:
Python/traceback.c | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/Python/traceback.c b/Python/traceback.c
--- a/Python/traceback.c
+++ b/Python/traceback.c
@@ -541,15 +541,16 @@
ch = PyUnicode_READ(kind, data, i);
else
ch = wstr[i];
- if (ch < 128) {
+ if (' ' <= ch && ch <= 126) {
+ /* printable ASCII character */
char c = (char)ch;
write(fd, &c, 1);
}
- else if (ch < 0xff) {
+ else if (ch <= 0xff) {
PUTS(fd, "\\x");
dump_hexadecimal(fd, ch, 2);
}
- else if (ch < 0xffff) {
+ else if (ch <= 0xffff) {
PUTS(fd, "\\u");
dump_hexadecimal(fd, ch, 4);
}
@@ -644,7 +645,7 @@
PUTS(fd, "Current thread 0x");
else
PUTS(fd, "Thread 0x");
- dump_hexadecimal(fd, (unsigned long)tstate->thread_id, sizeof(long)*2);
+ dump_hexadecimal(fd, (unsigned long)tstate->thread_id, sizeof(unsigned long)*2);
PUTS(fd, " (most recent call first):\n");
}
--
Repository URL: https://hg.python.org/cpython
More information about the Python-checkins
mailing list