diff options
author | Benjamin Peterson <benjamin@python.org> | 2009-03-02 23:31:26 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2009-03-02 23:31:26 (GMT) |
commit | f5b52246ed8a1191c3aa1da7d3c63bbe11aee020 (patch) | |
tree | dcac9a1daca7f583ff958cb61f73e9ed11b5564b /Parser/parsetok.c | |
parent | 0663a1ed793c164fb11d3dd62bebc677e260891e (diff) | |
download | cpython-f5b52246ed8a1191c3aa1da7d3c63bbe11aee020.zip cpython-f5b52246ed8a1191c3aa1da7d3c63bbe11aee020.tar.gz cpython-f5b52246ed8a1191c3aa1da7d3c63bbe11aee020.tar.bz2 |
ignore the coding cookie in compile(), exec(), and eval() if the source is a string #4626
Diffstat (limited to 'Parser/parsetok.c')
-rw-r--r-- | Parser/parsetok.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Parser/parsetok.c b/Parser/parsetok.c index d8ff6ee..4c3b506 100644 --- a/Parser/parsetok.c +++ b/Parser/parsetok.c @@ -49,7 +49,11 @@ PyParser_ParseStringFlagsFilenameEx(const char *s, const char *filename, initerr(err_ret, filename); - if ((tok = PyTokenizer_FromString(s)) == NULL) { + if (*flags & PyPARSE_IGNORE_COOKIE) + tok = PyTokenizer_FromUTF8(s); + else + tok = PyTokenizer_FromString(s); + if (tok == NULL) { err_ret->error = PyErr_Occurred() ? E_DECODE : E_NOMEM; return NULL; } |