diff options
author | pg9182 <96569817+pg9182@users.noreply.github.com> | 2022-08-08 06:12:11 -0400 |
---|---|---|
committer | GeckoEidechse <gecko.eidechse+git@pm.me> | 2022-08-14 14:37:24 +0200 |
commit | c0e8e576df16171da6f0e68cbfa18123e8d1e7e0 (patch) | |
tree | fb157acfec3c1a510644481aade8f7115efb2295 /NorthstarDedicatedTest/ExploitFixes.cpp | |
parent | d20cf6f08af37830d3bfc934cef356fa6a1aa102 (diff) | |
download | NorthstarLauncher-c0e8e576df16171da6f0e68cbfa18123e8d1e7e0.tar.gz NorthstarLauncher-c0e8e576df16171da6f0e68cbfa18123e8d1e7e0.zip |
Fix most clang/mingw issues (#226)
- Fix include case.
- Replace MSVC-specific align with standard alignas.
- Type fixes.
- Delete operator noexcept.
- A few other minor issues.
- clang-format everything.
- Use c++20 instead of c++17.
- Rewrite ERROR macro for launcher_wsock32_proxy.
- Use a plain ifstream for the audio.cpp wavStream.
Note: When compiling with clang, you'll need -municode.
Related to #212.
Diffstat (limited to 'NorthstarDedicatedTest/ExploitFixes.cpp')
-rw-r--r-- | NorthstarDedicatedTest/ExploitFixes.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/NorthstarDedicatedTest/ExploitFixes.cpp b/NorthstarDedicatedTest/ExploitFixes.cpp index 2f4e2b5c..31fa349a 100644 --- a/NorthstarDedicatedTest/ExploitFixes.cpp +++ b/NorthstarDedicatedTest/ExploitFixes.cpp @@ -204,7 +204,7 @@ KHOOK(ReadUsercmd, ("server.dll", "4C 89 44 24 ? 53 55 56 57"), void, __fastcall oReadUsercmd(buf, pCmd_move, pCmd_from); // Now let's make sure the CMD we read isnt messed up to prevent numerous exploits (including server crashing) - struct __declspec(align(4)) SV_CUserCmd + struct alignas(4) SV_CUserCmd { DWORD command_number; DWORD tick_count; @@ -291,7 +291,11 @@ KHOOK( static void* targetRetAddr = NSMem::PatternScan("engine.dll", "84 C0 75 2C 49 8B 16"); +#ifdef _MSC_VER if (_ReturnAddress() == targetRetAddr) +#else + if (__builtin_return_address(0) == targetRetAddr) +#endif { if (!ExploitFixes_UTF8Parser::CheckValid(a1, a2, strData)) { @@ -546,4 +550,4 @@ void ExploitFixes::LoadCallback_Full(HMODULE baseAddress) HookEnabler hook; ENABLER_CREATEHOOK(hook, (char*)baseAddress + 0x2a8a50, &GetEntByIndexHook, reinterpret_cast<LPVOID*>(&GetEntByIndex)); -}
\ No newline at end of file +} |