From 489154e5488105e4531a20469b7e21ac1982565d Mon Sep 17 00:00:00 2001 From: Ben Vanik Date: Tue, 21 Jan 2014 21:03:27 -0800 Subject: [PATCH] Ignore requests for kernel32.dll --- src/xenia/kernel/kernel_state.cc | 3 +++ src/xenia/kernel/xboxkrnl_modules.cc | 4 +--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/xenia/kernel/kernel_state.cc b/src/xenia/kernel/kernel_state.cc index ecffba54a..5cd6110b7 100644 --- a/src/xenia/kernel/kernel_state.cc +++ b/src/xenia/kernel/kernel_state.cc @@ -75,6 +75,9 @@ XModule* KernelState::GetModule(const char* name) { auto module = emulator_->xboxkrnl(); module->Retain(); return module; + } else if (xestrcasecmpa(name, "kernel32.dll") == 0) { + // Some games request this, for some reason. wtf. + return NULL; } else { // TODO(benvanik): support user modules/loading/etc. XEASSERTALWAYS(); diff --git a/src/xenia/kernel/xboxkrnl_modules.cc b/src/xenia/kernel/xboxkrnl_modules.cc index db50763fd..222517882 100644 --- a/src/xenia/kernel/xboxkrnl_modules.cc +++ b/src/xenia/kernel/xboxkrnl_modules.cc @@ -208,9 +208,7 @@ SHIM_CALL XexGetModuleHandle_shim( X_HANDLE module_handle = 0; int result = xeXexGetModuleHandle(module_name, &module_handle); - if (result) { - SHIM_SET_MEM_32(module_handle_ptr, module_handle); - } + SHIM_SET_MEM_32(module_handle_ptr, module_handle); SHIM_SET_RETURN_32(result); }