mirror of
https://github.com/python/cpython
synced 2024-10-14 10:18:12 +00:00
Subject: Bug in PC/import_nt.c
From: Dan Pierson <dan@remote.control.com> To: "Mark Hammond (E-mail)" <MHammond@skippinet.com.au>, "Guido van Rossum (E-mail)" <guido@cnri.reston.va.us> Date: Mon, 8 Jun 1998 17:25:07 -0400 RegistryQueryValue requires that its fourth argument be initialized to the length of the buffer being passed in, this wasn't being done. I also split the call and status test into two lines with a local variable so that I could look at the status in the debugger.
This commit is contained in:
parent
60f2f0cf8e
commit
76ec53c64d
|
@ -45,6 +45,7 @@ FILE *PyWin_FindRegisteredModule( const char *moduleName, struct filedescr **ppF
|
|||
FILE *fp;
|
||||
HKEY keyBase = PyWin_IsWin32s() ? HKEY_CLASSES_ROOT : HKEY_LOCAL_MACHINE;
|
||||
int modNameSize;
|
||||
long regStat;
|
||||
|
||||
// Calculate the size for the sprintf buffer.
|
||||
// Get the size of the chars only, plus 1 NULL.
|
||||
|
@ -53,7 +54,9 @@ FILE *PyWin_FindRegisteredModule( const char *moduleName, struct filedescr **ppF
|
|||
moduleKey = alloca(bufSize);
|
||||
sprintf(moduleKey, "Software\\Python\\PythonCore\\%s\\Modules\\%s%s", PyWin_DLLVersionString, moduleName, debugString);
|
||||
|
||||
if (RegQueryValue(keyBase, moduleKey, pathBuf, &modNameSize)!=ERROR_SUCCESS)
|
||||
modNameSize = bufSize;
|
||||
regStat = RegQueryValue(keyBase, moduleKey, pathBuf, &modNameSize);
|
||||
if (regStat!=ERROR_SUCCESS)
|
||||
return NULL;
|
||||
// use the file extension to locate the type entry.
|
||||
for (fdp = _PyImport_Filetab; fdp->suffix != NULL; fdp++) {
|
||||
|
|
Loading…
Reference in a new issue