Antoine Pitrou added the comment:
Are you sure this worked before 3.3?
Regardless, it seems you could fix this issue by adding a single line just
after the PyModule_Create() call:
__pyx_m = PyModule_Create(&__pyx_moduledef);
#endif
if (PyDict_SetItemString(PyImport_GetModuleDict(),
__Pyx_NAMESTR("reimport"), __pyx_m))
goto __pyx_L1_error;
The fundamental issue is that an extension is inserted into sys.modules
only after its initialization function returns, so importing it recursively
won't detect that it already exists.
(by contrast, a Python module is inserted into sys.modules before its code is
executed inside the module's global namespace)
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue16392>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com