From d393c1b227f22fb9af66040b2b367c99a4d1fa9a Mon Sep 17 00:00:00 2001 From: Eric Snow Date: Thu, 14 Sep 2017 12:18:12 -0600 Subject: bpo-28411: Isolate PyInterpreterState.modules (#3575) A bunch of code currently uses PyInterpreterState.modules directly instead of PyImport_GetModuleDict(). This complicates efforts to make changes relative to sys.modules. This patch switches to using PyImport_GetModuleDict() uniformly. Also, a number of related uses of sys.modules are updated for uniformity for the same reason. Note that this code was already reviewed and merged as part of #1638. I reverted that and am now splitting it up into more focused parts. --- Python/importdl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Python/importdl.c') diff --git a/Python/importdl.c b/Python/importdl.c index d8656b9433..32fb7e1be2 100644 --- a/Python/importdl.c +++ b/Python/importdl.c @@ -215,7 +215,8 @@ _PyImport_LoadDynamicModuleWithSpec(PyObject *spec, FILE *fp) else Py_INCREF(path); - if (_PyImport_FixupExtensionObject(m, name_unicode, path) < 0) + PyObject *modules = PyImport_GetModuleDict(); + if (_PyImport_FixupExtensionObject(m, name_unicode, path, modules) < 0) goto error; Py_DECREF(name_unicode); -- cgit v1.2.1