[issue1567] Patch for new API method _PyImport_ImportModuleNoLock(char *name)

Guido van Rossum report at bugs.python.org
Thu Jan 3 18:57:43 CET 2008


Guido van Rossum added the comment:

I see.  I think there's still something uncomfortable with this function
though -- it looks in sys.modules, but if it doesn't find it there, it
invokes the full-blown import machinery, which calls the (possibly
overridden) __import__ builtin, which in turn might do a relative import
(at least in 2.6) or any amount of funny business.

The only thing that really worries me here is the possibility of
relative import.  I'm thinking that relative import is really never
meant to be when called from C, so perhaps it would be sufficient to
modify the call to __import__ at the end of PyImport_Import() to add a
5th parameter, zero, to always force absolute import.  A quick concept
test shows that this doesn't break anything, though it is worth checking
the docs.

__________________________________
Tracker <report at bugs.python.org>
<http://bugs.python.org/issue1567>
__________________________________


More information about the Python-bugs-list mailing list