summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/test/test_coding.py5
-rw-r--r--Parser/tokenizer.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/Lib/test/test_coding.py b/Lib/test/test_coding.py
index e83015e..62cf555 100644
--- a/Lib/test/test_coding.py
+++ b/Lib/test/test_coding.py
@@ -21,6 +21,11 @@ class CodingTest(unittest.TestCase):
fp.close()
self.assertRaises(SyntaxError, compile, text, filename, 'exec')
+ def test_exec_valid_coding(self):
+ d = {}
+ exec('# coding: cp949\na = 5\n', d)
+ self.assertEqual(d['a'], 5)
+
def test_main():
test.test_support.run_unittest(CodingTest)
diff --git a/Parser/tokenizer.c b/Parser/tokenizer.c
index 00bb38a..284082d 100644
--- a/Parser/tokenizer.c
+++ b/Parser/tokenizer.c
@@ -632,7 +632,7 @@ decode_str(const char *str, struct tok_state *tok)
"unknown encoding: %s", tok->enc);
return error_ret(tok);
}
- str = PyString_AsString(utf8);
+ str = PyBytes_AsString(utf8);
}
assert(tok->decoding_buffer == NULL);
tok->decoding_buffer = utf8; /* CAUTION */