Fix trust check for embedded IE resources in popup windows

This commit is contained in:
pizzaboxer 2022-01-28 16:38:56 +00:00
parent 40daede2d2
commit 3d68312d63
3 changed files with 14 additions and 3 deletions

View File

@ -1,6 +1,7 @@
#pragma once #pragma once
#define MFC2010 #define MFC2010
#define PLAYERBUILD
#define ARBITERBUILD #define ARBITERBUILD
// when ARBITERBUILD is defined, the following changes occur: // when ARBITERBUILD is defined, the following changes occur:

View File

@ -39,6 +39,16 @@ CRobloxCommandLineInfo__ParseParam_t CRobloxCommandLineInfo__ParseParam = (CRobl
BOOL __fastcall Http__trustCheck_hook(const char* url) BOOL __fastcall Http__trustCheck_hook(const char* url)
{ {
if (strlen(url) == 7)
{
// so the client does this really fucking stupid thing where if it opens an ie window,
// it passes a char**, and not a char*
// no idea if thats a detours quirk or if thats how its just actually handled
// practically no url is ever going to be seven characters long so it doesn't really matter
url = *(char**)url;
}
LUrlParser::ParseURL parsedUrl = LUrlParser::ParseURL::parseURL(url); LUrlParser::ParseURL parsedUrl = LUrlParser::ParseURL::parseURL(url);
if (!parsedUrl.isValid()) if (!parsedUrl.isValid())

View File

@ -24,9 +24,9 @@ END_PATCH_LIST()
// DLLs for release will be loaded with VMProtect, so this isn't necessary // DLLs for release will be loaded with VMProtect, so this isn't necessary
// Arbiter will still use Stud_PE for ease in swapping DLLs however // Arbiter will still use Stud_PE for ease in swapping DLLs however
#ifdef ARBITERBUILD // #ifdef ARBITERBUILD
void __declspec(dllexport) doNothing() {} void __declspec(dllexport) import() {}
#endif // #endif
BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{ {