Author: victor.stinner Date: Thu Sep 2 00:14:29 2010 New Revision: 84424 Log: Create _PyImport_FindBuiltinExtension() and _PyImport_FixupBuiltinExtension() * Remove _PyImport_FindExtension() and _PyImport_FixupExtension() * Rename _PyImport_FindExtensionUnicode() to _PyImport_FindExtension() * Rename _PyImport_FixupExtensionUnicode() to_PyImport_FixupExtension() Modified: python/branches/import_unicode/Include/import.h python/branches/import_unicode/Modules/signalmodule.c python/branches/import_unicode/Python/import.c python/branches/import_unicode/Python/importdl.c python/branches/import_unicode/Python/pythonrun.c Modified: python/branches/import_unicode/Include/import.h ============================================================================== --- python/branches/import_unicode/Include/import.h (original) +++ python/branches/import_unicode/Include/import.h Thu Sep 2 00:14:29 2010 @@ -50,10 +50,10 @@ PyAPI_FUNC(int) _PyImport_IsScript(struct filedescr *); PyAPI_FUNC(void) _PyImport_ReInitLock(void); -PyAPI_FUNC(PyObject *)_PyImport_FindExtension(char *, char *); -PyAPI_FUNC(PyObject *)_PyImport_FindExtensionUnicode(char *, PyObject *); -PyAPI_FUNC(int)_PyImport_FixupExtension(PyObject*, char *, char *); -PyAPI_FUNC(int)_PyImport_FixupExtensionUnicode(PyObject*, char *, PyObject *); +PyAPI_FUNC(PyObject *)_PyImport_FindBuiltinExtension(char *); +PyAPI_FUNC(PyObject *)_PyImport_FindExtension(char *, PyObject *); +PyAPI_FUNC(int)_PyImport_FixupBuiltinExtension(PyObject*, char *); +PyAPI_FUNC(int)_PyImport_FixupExtension(PyObject*, char *, PyObject *); struct _inittab { char *name; Modified: python/branches/import_unicode/Modules/signalmodule.c ============================================================================== --- python/branches/import_unicode/Modules/signalmodule.c (original) +++ python/branches/import_unicode/Modules/signalmodule.c Thu Sep 2 00:14:29 2010 @@ -932,7 +932,7 @@ { PyObject *m = PyInit_signal(); if (m) { - _PyImport_FixupExtension(m, "signal", "signal"); + _PyImport_FixupBuiltinExtension(m, "signal"); Py_DECREF(m); } } Modified: python/branches/import_unicode/Python/import.c ============================================================================== --- python/branches/import_unicode/Python/import.c (original) +++ python/branches/import_unicode/Python/import.c Thu Sep 2 00:14:29 2010 @@ -585,7 +585,7 @@ */ int -_PyImport_FixupExtensionUnicode(PyObject *mod, char *name, PyObject *filename) +_PyImport_FixupExtension(PyObject *mod, char *name, PyObject *filename) { PyObject *modules, *dict; struct PyModuleDef *def; @@ -625,32 +625,30 @@ if (def->m_base.m_copy == NULL) return -1; } - PyDict_SetItem(extensions, filename, (PyObject*)def); + if (filename != NULL) + PyDict_SetItem(extensions, filename, (PyObject*)def); + else + PyDict_SetItemString(extensions, name, (PyObject*)def); return 0; } int -_PyImport_FixupExtension(PyObject *mod, char *name, char *filename) +_PyImport_FixupBuiltinExtension(PyObject *mod, char *name) { - PyObject *fileobj; - int result; - fileobj = PyUnicode_FromString(filename); - if (fileobj == NULL) - return -1; - result = _PyImport_FixupExtensionUnicode(mod, name, fileobj); - Py_DECREF(fileobj); - return result; + return _PyImport_FixupExtension(mod, name, NULL); } - PyObject * -_PyImport_FindExtensionUnicode(char *name, PyObject *filename) +_PyImport_FindExtension(char *name, PyObject *filename) { PyObject *mod, *mdict; PyModuleDef* def; if (extensions == NULL) return NULL; - def = (PyModuleDef*)PyDict_GetItem(extensions, filename); + if (filename != NULL) + def = (PyModuleDef*)PyDict_GetItem(extensions, filename); + else + def = (PyModuleDef*)PyDict_GetItemString(extensions, name); if (def == NULL) return NULL; if (def->m_size == -1) { @@ -680,23 +678,22 @@ Py_DECREF(mod); return NULL; } - if (Py_VerboseFlag) - PySys_FormatStderr("import %s # previously loaded (%U)\n", - name, filename); + if (Py_VerboseFlag) { + if (filename != NULL) + PySys_FormatStderr("import %s # previously loaded (%U)\n", + name, filename); + else + PySys_FormatStderr("import %s\n", name); + } return mod; } PyObject * -_PyImport_FindExtension(char *name, char *filename) +_PyImport_FindBuiltinExtension(char *name) { - PyObject *fileobj, *mod; - fileobj = PyUnicode_DecodeFSDefault(filename); - mod = _PyImport_FindExtensionUnicode(name, fileobj); - Py_DECREF(fileobj); - return mod; + return _PyImport_FindExtension(name, NULL); } - /* Get the module object corresponding to a module name. First check the modules dictionary if there's one there, if not, create a new one and insert it in the modules dictionary. @@ -2446,7 +2443,7 @@ PyObject *path; path = PyUnicode_FromString(name); - if (_PyImport_FindExtensionUnicode(name, path) != NULL) { + if (_PyImport_FindExtension(name, path) != NULL) { Py_DECREF(path); return 1; } @@ -2468,7 +2465,7 @@ Py_DECREF(path); return -1; } - if (_PyImport_FixupExtensionUnicode(mod, name, path) < 0) { + if (_PyImport_FixupExtension(mod, name, path) < 0) { Py_DECREF(path); return -1; } Modified: python/branches/import_unicode/Python/importdl.c ============================================================================== --- python/branches/import_unicode/Python/importdl.c (original) +++ python/branches/import_unicode/Python/importdl.c Thu Sep 2 00:14:29 2010 @@ -28,7 +28,7 @@ PyObject* (*p)(void); struct PyModuleDef *def; - if ((m = _PyImport_FindExtensionUnicode(name, path)) != NULL) { + if ((m = _PyImport_FindExtension(name, path)) != NULL) { Py_INCREF(m); return m; } @@ -83,7 +83,7 @@ Py_DECREF(path); } - if (_PyImport_FixupExtensionUnicode(m, name, path) < 0) + if (_PyImport_FixupExtension(m, name, path) < 0) return NULL; if (Py_VerboseFlag) PySys_FormatStderr( Modified: python/branches/import_unicode/Python/pythonrun.c ============================================================================== --- python/branches/import_unicode/Python/pythonrun.c (original) +++ python/branches/import_unicode/Python/pythonrun.c Thu Sep 2 00:14:29 2010 @@ -240,7 +240,7 @@ bimod = _PyBuiltin_Init(); if (bimod == NULL) Py_FatalError("Py_Initialize: can't initialize builtins modules"); - _PyImport_FixupExtension(bimod, "builtins", "builtins"); + _PyImport_FixupBuiltinExtension(bimod, "builtins"); interp->builtins = PyModule_GetDict(bimod); if (interp->builtins == NULL) Py_FatalError("Py_Initialize: can't initialize builtins dict"); @@ -256,7 +256,7 @@ if (interp->sysdict == NULL) Py_FatalError("Py_Initialize: can't initialize sys dict"); Py_INCREF(interp->sysdict); - _PyImport_FixupExtension(sysmod, "sys", "sys"); + _PyImport_FixupBuiltinExtension(sysmod, "sys"); PySys_SetPath(Py_GetPath()); PyDict_SetItemString(interp->sysdict, "modules", interp->modules); @@ -557,7 +557,7 @@ interp->modules = PyDict_New(); interp->modules_reloading = PyDict_New(); - bimod = _PyImport_FindExtension("builtins", "builtins"); + bimod = _PyImport_FindBuiltinExtension("builtins"); if (bimod != NULL) { interp->builtins = PyModule_GetDict(bimod); if (interp->builtins == NULL) @@ -568,7 +568,7 @@ /* initialize builtin exceptions */ _PyExc_Init(); - sysmod = _PyImport_FindExtension("sys", "sys"); + sysmod = _PyImport_FindBuiltinExtension("sys"); if (bimod != NULL && sysmod != NULL) { PyObject *pstderr; interp->sysdict = PyModule_GetDict(sysmod);
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4