diff options
author | Benjamin Peterson <benjamin@python.org> | 2014-10-06 21:11:25 -0400 |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2014-10-06 21:11:25 -0400 |
commit | 9c06648ea3157945a37a3b38e35d71c948b998dd (patch) | |
tree | 6bc2c56520ecad5d30a8b5bbfcc2c05191cfc43f /Python/traceback.c | |
parent | 1c41575d9be1e2bcce4916ed170fceacf456dd65 (diff) | |
parent | 9d2ec0c84470eb9fdec4fe87cb223a425370e6c3 (diff) | |
download | cpython-9c06648ea3157945a37a3b38e35d71c948b998dd.tar.gz |
merge 3.4
Diffstat (limited to 'Python/traceback.c')
-rw-r--r-- | Python/traceback.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/Python/traceback.c b/Python/traceback.c index 2ece192db9..5d60dade4c 100644 --- a/Python/traceback.c +++ b/Python/traceback.c @@ -198,7 +198,7 @@ _Py_FindSourceFile(PyObject *filename, char* namebuf, size_t namelen, PyObject * } strcpy(namebuf, PyBytes_AS_STRING(path)); Py_DECREF(path); - if (strlen(namebuf) != len) + if (strlen(namebuf) != (size_t)len) continue; /* v contains '\0' */ if (len > 0 && namebuf[len-1] != SEP) namebuf[len++] = SEP; @@ -541,15 +541,16 @@ dump_ascii(int fd, PyObject *text) 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 @@ write_thread_id(int fd, PyThreadState *tstate, int is_current) 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"); } |