diff --git a/dll/kernel32.cpp b/dll/kernel32.cpp index 20adf82..a5932a6 100644 --- a/dll/kernel32.cpp +++ b/dll/kernel32.cpp @@ -2043,7 +2043,6 @@ static void *resolveByName(const char *name) { if (strcmp(name, "InitOnceBeginInitialize") == 0) return (void *) kernel32::InitOnceBeginInitialize; if (strcmp(name, "AcquireSRWLockShared") == 0) return (void *) kernel32::AcquireSRWLockShared; if (strcmp(name, "ReleaseSRWLockShared") == 0) return (void *) kernel32::ReleaseSRWLockShared; - if (strcmp(name, "ReleaseSRWLockShared") == 0) return (void *) kernel32::AcquireSRWLockShared; if (strcmp(name, "AcquireSRWLockExclusive") == 0) return (void *) kernel32::AcquireSRWLockExclusive; if (strcmp(name, "ReleaseSRWLockExclusive") == 0) return (void *) kernel32::ReleaseSRWLockExclusive; if (strcmp(name, "TryAcquireSRWLockExclusive") == 0) return (void *) kernel32::TryAcquireSRWLockExclusive; diff --git a/loader.cpp b/loader.cpp index cbcf898..bd194fe 100644 --- a/loader.cpp +++ b/loader.cpp @@ -107,6 +107,7 @@ uint32_t read32(FILE *file) { wibo::Executable::Executable() { imageBuffer = nullptr; imageSize = 0; + entryPoint = nullptr; rsrcBase = 0; } diff --git a/main.cpp b/main.cpp index 54a696b..31f2287 100644 --- a/main.cpp +++ b/main.cpp @@ -127,7 +127,8 @@ void wibo::freeModule(HMODULE module) { delete static_cast(module) void *wibo::resolveFuncByName(HMODULE module, const char *funcName) { auto *info = static_cast(module); - if (info && info->module && info->module->byName) { + assert(info); + if (info->module && info->module->byName) { void *func = info->module->byName(funcName); if (func) return func; @@ -137,7 +138,8 @@ void *wibo::resolveFuncByName(HMODULE module, const char *funcName) { void *wibo::resolveFuncByOrdinal(HMODULE module, uint16_t ordinal) { auto *info = static_cast(module); - if (info && info->module && info->module->byOrdinal) { + assert(info); + if (info->module && info->module->byOrdinal) { void *func = info->module->byOrdinal(ordinal); if (func) return func;