bpo-36266: Add module name in ImportError when DLL not found on Windows (GH-15180)

(cherry picked from commit 24fe46081b)

Co-authored-by: shireenrao <shireenrao@gmail.com>
This commit is contained in:
Miss Islington (bot) 2019-08-17 14:11:28 -07:00 committed by GitHub
parent 7309cca147
commit 786a4e1cef
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 4 deletions

View File

@ -0,0 +1 @@
Add the module name in the formatted error message when DLL load fail happens during module import in ``_PyImport_FindSharedFuncptrWindows()``. Patch by Srinivas Nyayapati.

View File

@ -258,8 +258,8 @@ dl_funcptr _PyImport_FindSharedFuncptrWindows(const char *prefix,
This should not happen if called correctly. */
if (theLength == 0) {
message = PyUnicode_FromFormat(
"DLL load failed with error code %u",
errorCode);
"DLL load failed with error code %u while importing %s",
errorCode, shortname);
} else {
/* For some reason a \r\n
is appended to the text */
@ -269,8 +269,8 @@ dl_funcptr _PyImport_FindSharedFuncptrWindows(const char *prefix,
theLength -= 2;
theInfo[theLength] = '\0';
}
message = PyUnicode_FromString(
"DLL load failed: ");
message = PyUnicode_FromFormat(
"DLL load failed while importing %s: ", shortname);
PyUnicode_AppendAndDel(&message,
PyUnicode_FromWideChar(