Fix segfault in CoCreateInstance (#59)

* Fix segfault in CoCreateInstance

* update comment

* typo

* typo x2
This commit is contained in:
Mark Street 2023-10-25 22:06:49 +01:00 committed by GitHub
parent 0f8fb7f62d
commit 2d627de537
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 4 deletions

View File

@ -20,12 +20,11 @@ namespace ole32 {
const GUID *riid,
void **ppv
) {
// when license.dat is missing:
// rclsid = CLSID_ShellLink (0x21401), riid = IID_IShellLinkA (0x214ee)
// and then it crashes with a null pointer deref
DEBUG_LOG("CoCreateInstance 0x%x %p %d 0x%x %p\n", rclsid->Data1, pUnkOuter, dwClsContext, riid->Data1, *ppv);
*ppv = 0;
return 1;
// E_POINTER is returned when ppv is NULL, which isn't true here, but returning 1 results
// in a segfault with mwcceppc.exe when it's told to include directories that don't exist
return 0x80004003; // E_POINTER
}
}