Fix broken UI in windowed mode for Polaris Chord (#372)

This commit is contained in:
GEEKiDoS
2025-09-19 00:44:23 +08:00
committed by GitHub
parent 4d658bf273
commit b462c838f6
4 changed files with 46 additions and 5 deletions
+12 -2
View File
@@ -230,7 +230,13 @@ namespace overlay::windows {
auto const register_fn = reinterpret_cast<decltype(&LdrRegisterDllNotification)>
(GetProcAddress(GetModuleHandleW(L"ntdll.dll"), "LdrRegisterDllNotification"));
auto callback = [] CALLBACK (ULONG reason, PCLDR_DLL_NOTIFICATION_DATA data, PVOID ctx) {
auto callback =
#ifdef _MSC_VER
static_cast<PLDR_DLL_NOTIFICATION_FUNCTION>([]
#else
[] CALLBACK
#endif
(ULONG reason, PCLDR_DLL_NOTIFICATION_DATA data, PVOID ctx) {
if (reason == LDR_DLL_NOTIFICATION_REASON_LOADED) {
auto const dll = strtolower(std::filesystem::path({
data->Loaded.FullDllName->Buffer,
@@ -241,7 +247,11 @@ namespace overlay::windows {
static_cast<PatchManager*>(ctx)->reload_local_patches(true);
}
}
};
}
#ifdef _MSC_VER
)
#endif
;
if (register_fn && NT_SUCCESS(register_fn(0, callback, this, &ldr_notify_cookie))) {
log_info("patchmanager", "registered for DLL load notifications");