From 39ed1d313fb88a2f8c0a45eda5ac34f85f138b67 Mon Sep 17 00:00:00 2001 From: NovaRain Date: Sun, 18 Feb 2024 01:04:51 +0800 Subject: [PATCH] Code correction to the previous commit --- sfall/main.cpp | 72 +++++++++++++++++++++++++------------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/sfall/main.cpp b/sfall/main.cpp index c5d53012..3a1f167d 100644 --- a/sfall/main.cpp +++ b/sfall/main.cpp @@ -310,42 +310,42 @@ defaultIni: static void LoadOriginalDll(DWORD fdwReason) { switch (fdwReason) { - case DLL_PROCESS_ATTACH: - ddraw.dll = LoadLibraryA("wrapper\\ddraw.dll"); // external wrapper (e.g. cnc-ddraw) - if (!ddraw.dll) { - char path[MAX_PATH]; - CopyMemory(path + GetSystemDirectoryA(path , MAX_PATH - 10), "\\ddraw.dll", 11); // path to original dll - ddraw.dll = LoadLibraryA(path); - if (ddraw.dll) { - ddraw.AcquireDDThreadLock = GetProcAddress(ddraw.dll, "AcquireDDThreadLock"); - ddraw.CheckFullscreen = GetProcAddress(ddraw.dll, "CheckFullscreen"); - ddraw.CompleteCreateSysmemSurface = GetProcAddress(ddraw.dll, "CompleteCreateSysmemSurface"); - ddraw.D3DParseUnknownCommand = GetProcAddress(ddraw.dll, "D3DParseUnknownCommand"); - ddraw.DDGetAttachedSurfaceLcl = GetProcAddress(ddraw.dll, "DDGetAttachedSurfaceLcl"); - ddraw.DDInternalLock = GetProcAddress(ddraw.dll, "DDInternalLock"); - ddraw.DDInternalUnlock = GetProcAddress(ddraw.dll, "DDInternalUnlock"); - ddraw.DSoundHelp = GetProcAddress(ddraw.dll, "DSoundHelp"); - ddraw.DirectDrawCreateClipper = GetProcAddress(ddraw.dll, "DirectDrawCreateClipper"); - ddraw.DirectDrawCreate = GetProcAddress(ddraw.dll, "DirectDrawCreate"); - ddraw.DirectDrawCreateEx = GetProcAddress(ddraw.dll, "DirectDrawCreateEx"); - ddraw.DirectDrawEnumerateA = GetProcAddress(ddraw.dll, "DirectDrawEnumerateA"); - ddraw.DirectDrawEnumerateExA = GetProcAddress(ddraw.dll, "DirectDrawEnumerateExA"); - ddraw.DirectDrawEnumerateExW = GetProcAddress(ddraw.dll, "DirectDrawEnumerateExW"); - ddraw.DirectDrawEnumerateW = GetProcAddress(ddraw.dll, "DirectDrawEnumerateW"); - ddraw.DllCanUnloadNow = GetProcAddress(ddraw.dll, "DllCanUnloadNow"); - ddraw.DllGetClassObject = GetProcAddress(ddraw.dll, "DllGetClassObject"); - ddraw.GetDDSurfaceLocal = GetProcAddress(ddraw.dll, "GetDDSurfaceLocal"); - ddraw.GetOLEThunkData = GetProcAddress(ddraw.dll, "GetOLEThunkData"); - ddraw.GetSurfaceFromDC = GetProcAddress(ddraw.dll, "GetSurfaceFromDC"); - ddraw.RegisterSpecialCase = GetProcAddress(ddraw.dll, "RegisterSpecialCase"); - ddraw.ReleaseDDThreadLock = GetProcAddress(ddraw.dll, "ReleaseDDThreadLock"); - ddraw.SetAppCompatData = GetProcAddress(ddraw.dll, "SetAppCompatData"); - } - } - break; - case DLL_PROCESS_DETACH: - if (ddraw.dll) FreeLibrary(ddraw.dll); - break; + case DLL_PROCESS_ATTACH: + ddraw.dll = LoadLibraryA("wrapper\\ddraw.dll"); // external wrapper (e.g. cnc-ddraw) + if (!ddraw.dll) { + char path[MAX_PATH]; + CopyMemory(path + GetSystemDirectoryA(path , MAX_PATH - 10), "\\ddraw.dll", 11); // path to original dll + ddraw.dll = LoadLibraryA(path); + } + if (ddraw.dll) { + ddraw.AcquireDDThreadLock = GetProcAddress(ddraw.dll, "AcquireDDThreadLock"); + ddraw.CheckFullscreen = GetProcAddress(ddraw.dll, "CheckFullscreen"); + ddraw.CompleteCreateSysmemSurface = GetProcAddress(ddraw.dll, "CompleteCreateSysmemSurface"); + ddraw.D3DParseUnknownCommand = GetProcAddress(ddraw.dll, "D3DParseUnknownCommand"); + ddraw.DDGetAttachedSurfaceLcl = GetProcAddress(ddraw.dll, "DDGetAttachedSurfaceLcl"); + ddraw.DDInternalLock = GetProcAddress(ddraw.dll, "DDInternalLock"); + ddraw.DDInternalUnlock = GetProcAddress(ddraw.dll, "DDInternalUnlock"); + ddraw.DSoundHelp = GetProcAddress(ddraw.dll, "DSoundHelp"); + ddraw.DirectDrawCreateClipper = GetProcAddress(ddraw.dll, "DirectDrawCreateClipper"); + ddraw.DirectDrawCreate = GetProcAddress(ddraw.dll, "DirectDrawCreate"); + ddraw.DirectDrawCreateEx = GetProcAddress(ddraw.dll, "DirectDrawCreateEx"); + ddraw.DirectDrawEnumerateA = GetProcAddress(ddraw.dll, "DirectDrawEnumerateA"); + ddraw.DirectDrawEnumerateExA = GetProcAddress(ddraw.dll, "DirectDrawEnumerateExA"); + ddraw.DirectDrawEnumerateExW = GetProcAddress(ddraw.dll, "DirectDrawEnumerateExW"); + ddraw.DirectDrawEnumerateW = GetProcAddress(ddraw.dll, "DirectDrawEnumerateW"); + ddraw.DllCanUnloadNow = GetProcAddress(ddraw.dll, "DllCanUnloadNow"); + ddraw.DllGetClassObject = GetProcAddress(ddraw.dll, "DllGetClassObject"); + ddraw.GetDDSurfaceLocal = GetProcAddress(ddraw.dll, "GetDDSurfaceLocal"); + ddraw.GetOLEThunkData = GetProcAddress(ddraw.dll, "GetOLEThunkData"); + ddraw.GetSurfaceFromDC = GetProcAddress(ddraw.dll, "GetSurfaceFromDC"); + ddraw.RegisterSpecialCase = GetProcAddress(ddraw.dll, "RegisterSpecialCase"); + ddraw.ReleaseDDThreadLock = GetProcAddress(ddraw.dll, "ReleaseDDThreadLock"); + ddraw.SetAppCompatData = GetProcAddress(ddraw.dll, "SetAppCompatData"); + } + break; + case DLL_PROCESS_DETACH: + if (ddraw.dll) FreeLibrary(ddraw.dll); + break; } }