summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Rouhani <robert.rouhani@gmail.com>2020-05-01 23:28:06 (GMT)
committerGitHub <noreply@github.com>2020-05-01 23:28:06 (GMT)
commitf40bd466bf14029e2687e36e965875adf9d4be1a (patch)
tree87d20f5e639f5d96bafaa02bb8bebf3ac5a64796
parent7ba08ff7b41911f972d0750e068a2270e0dbd68f (diff)
downloadcpython-f40bd466bf14029e2687e36e965875adf9d4be1a.zip
cpython-f40bd466bf14029e2687e36e965875adf9d4be1a.tar.gz
cpython-f40bd466bf14029e2687e36e965875adf9d4be1a.tar.bz2
bpo-40417: Fix deprecation warning in PyImport_ReloadModule (GH-19750)
I can add another commit with the new test case I wrote to verify that the warning was being printed before my change, stopped printing after my change, and that the function does not return null after my change. Automerge-Triggered-By: @brettcannon
-rw-r--r--Misc/NEWS.d/next/Core and Builtins/2020-05-01-19-04-52.bpo-40417.Sti2lJ.rst1
-rw-r--r--Python/import.c14
2 files changed, 8 insertions, 7 deletions
diff --git a/Misc/NEWS.d/next/Core and Builtins/2020-05-01-19-04-52.bpo-40417.Sti2lJ.rst b/Misc/NEWS.d/next/Core and Builtins/2020-05-01-19-04-52.bpo-40417.Sti2lJ.rst
new file mode 100644
index 0000000..932e853
--- /dev/null
+++ b/Misc/NEWS.d/next/Core and Builtins/2020-05-01-19-04-52.bpo-40417.Sti2lJ.rst
@@ -0,0 +1 @@
+Fix imp module deprecation warning when PyImport_ReloadModule is called. Patch by Robert Rouhani.
diff --git a/Python/import.c b/Python/import.c
index 400b02a..0e2e7c3 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -1978,23 +1978,23 @@ PyImport_ImportModuleLevel(const char *name, PyObject *globals, PyObject *locals
PyObject *
PyImport_ReloadModule(PyObject *m)
{
- _Py_IDENTIFIER(imp);
+ _Py_IDENTIFIER(importlib);
_Py_IDENTIFIER(reload);
PyObject *reloaded_module = NULL;
- PyObject *imp = _PyImport_GetModuleId(&PyId_imp);
- if (imp == NULL) {
+ PyObject *importlib = _PyImport_GetModuleId(&PyId_importlib);
+ if (importlib == NULL) {
if (PyErr_Occurred()) {
return NULL;
}
- imp = PyImport_ImportModule("imp");
- if (imp == NULL) {
+ importlib = PyImport_ImportModule("importlib");
+ if (importlib == NULL) {
return NULL;
}
}
- reloaded_module = _PyObject_CallMethodIdOneArg(imp, &PyId_reload, m);
- Py_DECREF(imp);
+ reloaded_module = _PyObject_CallMethodIdOneArg(importlib, &PyId_reload, m);
+ Py_DECREF(importlib);
return reloaded_module;
}