SMJSGaming / GDIntercept

A GD proxy mod which allows you to intercept and modify any communication sent through the Cocos2D-X or Geode web clients.
GNU General Public License v3.0
10 stars 3 forks source link

Crash when opening a binary response in "R" mode #2

Closed xparadoxical closed 2 months ago

xparadoxical commented 2 months ago

In "R" mode, response bodies with songs/sfx are interpreted as json, which results in crashes. audio.ngfiles.com/**, geometrydashfiles.b-cdn.net/(music|sfx)/*

v0.2.1-alpha.2

crashlog ``` 2024-06-23T15:44:16+0200 Whoopsies! An unhandled exception has occurred. == Geode Information == Loader Version: v3.0.0 Loader Commit: 9de409a Bindings Commit: b50921d Installed mods: 33 Problems: 27 == Exception Information == C++ Exception: class nlohmann::json_abi_v3_11_3::detail::type_error("[json.exception.type_error.316] invalid UTF-8 byte at index 5: 0x88") Faulty Mod: GDIntercept v0.2.1-alpha.2 (smjs.gdintercept) Crashed thread: Main == Stack Trace == - C:\Windows\System32\KERNELBASE.dll + 5f39c (RaiseException + 108) - C:\Windows\SYSTEM32\VCRUNTIME140.dll + 5267 (CxxThrowException + 151) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\geode\unzipped\smjs.gdintercept\smjs.gdintercept.dll + 1aff0 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\geode\unzipped\smjs.gdintercept\smjs.gdintercept.dll + 198e4 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\geode\unzipped\smjs.gdintercept\smjs.gdintercept.dll + 14b58 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\geode\unzipped\smjs.gdintercept\smjs.gdintercept.dll + 14fa5 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\geode\unzipped\smjs.gdintercept\smjs.gdintercept.dll + 152a6 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\geode\unzipped\smjs.gdintercept\smjs.gdintercept.dll + a4d3 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\geode\unzipped\smjs.gdintercept\smjs.gdintercept.dll + fbcb - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\geode\unzipped\smjs.gdintercept\smjs.gdintercept.dll + e44f - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\libcocos2d.dll + 597cf (cocos2d::CCMenuItem::activate + 47) - 000002C42BFA0872 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\Geode.dll + 3c3c5 (geode::modifier::AsStaticFunction_activate,void (hook7<(anonymous namespace)::hook7Parent>::*)()>::Impl::*)()>::function + 21 | D:\a\geode\geode\build\bindings\bindings\Geode\modify\CCMenuItem.hpp:35) - 000002C42BFA0872 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\libcocos2d.dll + 58798 (cocos2d::CCMenu::ccTouchEnded + 40) - 000002C42BFA0C72 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\Geode.dll + 3ca8f (geode::modifier::AsStaticFunction_ccTouchEnded,void (hook15<(anonymous namespace)::hook15Parent>::*)(cocos2d::CCTouch *, cocos2d::CCEvent *)>::Impl::*)(cocos2d::CCTouch *, cocos2d::CCEvent *)>::function + 47 | D:\a\geode\geode\build\bindings\bindings\Geode\modify\CCMenu.hpp:105) - 000002C42BFA0C72 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\libcocos2d.dll + b0c3c (cocos2d::CCTouchDispatcher::touches + 444) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\libcocos2d.dll + 6b131 (cocos2d::CCEGLViewProtocol::handleTouchesEnd + 97) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\libcocos2d.dll + 76159 (cocos2d::CCEGLView::onGLFWMouseCallBack + 249) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\libcocos2d.dll + 76186 (cocos2d::CCEGLView::onGLFWMouseCallBack + 294) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\libcocos2d.dll + d686b (cocos2d::CCPoint::unrotate + 27483) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\geode\unzipped\absolllute.megahack\absolllute.megahack.dll + 24de32 - C:\Windows\System32\USER32.dll + 189a1 (DispatchMessageW + 1857) - C:\Windows\System32\USER32.dll + 181eb (CallWindowProcW + 139) - C:\Windows\SYSTEM32\OPENGL32.dll + 41eb4 (wglSwapBuffers + 1092) - C:\Windows\System32\USER32.dll + 189a1 (DispatchMessageW + 1857) - C:\Windows\System32\USER32.dll + 18461 (DispatchMessageW + 513) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\libcocos2d.dll + d4198 (cocos2d::CCPoint::unrotate + 17544) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\libcocos2d.dll + 72ca6 (cocos2d::CCApplication::run + 1078) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\GeometryDash.exe + 4a2d69 - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\Geode.dll + 2299ca (gdMainHook + 554 | D:\a\geode\geode\loader\src\platform\windows\main.cpp:167) - C:\Program Files (x86)\Steam\steamapps\common\Geometry Dash\GeometryDash.exe + 4a415a - C:\Windows\System32\KERNEL32.DLL + 1257d (BaseThreadInitThunk + 29) - C:\Windows\SYSTEM32\ntdll.dll + 5af28 (RtlUserThreadStart + 40) == Register States == RAX: 000002c4675787b0 RBX: 0000000000000000 RCX: 0000000000000582 RDX: 00007ffd382548d2 RBP: 0000000000000000 RSP: 000000c6859dfe20 RDI: 0000000000000000 RSI: 0000000000000000 RIP: 00007ffd3826af28 R8: 0000000000000582 R9: 000002c466f20000 R10: 000002c405010004 R11: 0000000000000401 R12: 0000000000000000 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 == Installed Mods == x | [v8.0.1-alpha.3] absolllute.megahack x | [v1.0.0] alphalaneous.is_it_sent x | [v4.2.0-beta.2] cvolton.betterinfo x | [v1.2.0-beta.1] cvolton.misc_bugfixes ! | [v1.0.1] elnexreal.auto_priority | [v2.10.1] fleym.nongd x | [v1.3.0] gdutilsdevs.gdutils x | [v1.6.0] geode.custom-keybinds x | [v3.0.0] geode.loader x | [v1.12.0] geode.node-ids x | [v1.1.2] hiimjustin000.level_size x | [v1.0.2] hiimjustin000.na_demon ! | [v1.0.1] hjfod.quick-volume-controls ! | [v2.0.0] iandyhd3.request_logger ! | [v1.2.0] khronophobia.shortcuts_menu x | [v1.0.0-beta.4] ml5.shopping-list x | [v1.3.0-beta.1] ml5.treasure-checklist ! | [v1.2.6] nytelyte.wave_trail_drag_fix ! | [v1.1.0] polsk.level_quests ! | [v1.0.0] polsk.pause_settings ! | [v1.1.1] redlime.statchanges x | [v2.1.3] relative.newgrounds_proxy ! | [v1.0.1] riley.nogrounds x | [v0.2.1-alpha.2] smjs.gdintercept ! | [v1.1.0] sofabeddd.colored_icon_kit ! | [v1.0.1] techstudent10.hide_locks ! | [v1.6.9] thesillydoggo.entersearch ! | [v1.2.0] thesillydoggo.moretags ! | [v1.1.1] uproxide.autosong ! | [v1.1.3] weebify.coins_in_pause_menu ! | [v1.0.0] xanii.icon_freeze ! | [v1.0.0] xiyxs.daily_and_weekly_levels ! | [v1.0.1] zsa.percentage-bugfix ```
SMJSGaming commented 2 months ago

I can replicate this, I'll see what the issue is

SMJSGaming commented 2 months ago

Seems to be due to a lack of proper form format checking. fixed it now image