diff options
author | Neal Norwitz <nnorwitz@gmail.com> | 2007-02-25 16:19:21 (GMT) |
---|---|---|
committer | Neal Norwitz <nnorwitz@gmail.com> | 2007-02-25 16:19:21 (GMT) |
commit | a5f5f147834419c9c2c76b468c16d83f68fc1102 (patch) | |
tree | 9fe2081a5d1fe970e4090ca6a9026f7473e7a564 | |
parent | d621a6e8dc7ca155632ba4d1d8c467839427e7d5 (diff) | |
download | cpython-a5f5f147834419c9c2c76b468c16d83f68fc1102.zip cpython-a5f5f147834419c9c2c76b468c16d83f68fc1102.tar.gz cpython-a5f5f147834419c9c2c76b468c16d83f68fc1102.tar.bz2 |
Backport 53901 and 53902 to prevent crash when there is an error decoding unicode filenames
-rw-r--r-- | Misc/NEWS | 2 | ||||
-rw-r--r-- | Python/ceval.c | 2 |
2 files changed, 4 insertions, 0 deletions
@@ -124,6 +124,8 @@ Extension Modules - The version number of the ctypes package was changed to "1.0.2". +- Bug #1664966: Fix crash in exec if Unicode filename can't be decoded. + - Patch #1544279: Improve thread-safety of the socket module by moving the sock_addr_t storage out of the socket object. diff --git a/Python/ceval.c b/Python/ceval.c index 7884051..1ee0f3b 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -4173,6 +4173,8 @@ exec_statement(PyFrameObject *f, PyObject *prog, PyObject *globals, FILE *fp = PyFile_AsFile(prog); char *name = PyString_AsString(PyFile_Name(prog)); PyCompilerFlags cf; + if (name == NULL) + return -1; cf.cf_flags = 0; if (PyEval_MergeCompilerFlags(&cf)) v = PyRun_FileFlags(fp, name, Py_file_input, globals, |