From 82daa60defbd6497efdaa6c1132ecc8563122ed5 Mon Sep 17 00:00:00 2001 From: INADA Naoki Date: Thu, 29 Nov 2018 20:01:27 +0900 Subject: bpo-30167: Remove __cached__ from __main__ when removing __file__ (GH-7415) --- Python/pythonrun.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'Python/pythonrun.c') diff --git a/Python/pythonrun.c b/Python/pythonrun.c index 2d5dc88c5c..9b6371d9c0 100644 --- a/Python/pythonrun.c +++ b/Python/pythonrun.c @@ -434,8 +434,14 @@ PyRun_SimpleFileExFlags(FILE *fp, const char *filename, int closeit, Py_DECREF(v); ret = 0; done: - if (set_file_name && PyDict_DelItemString(d, "__file__")) - PyErr_Clear(); + if (set_file_name) { + if (PyDict_DelItemString(d, "__file__")) { + PyErr_Clear(); + } + if (PyDict_DelItemString(d, "__cached__")) { + PyErr_Clear(); + } + } Py_XDECREF(m); return ret; } -- cgit v1.2.1