[Rseding91] .15.26 GUI/remote change crash

This subforum contains all the issues which we already resolved.
Nexela
Smart Inserter
Smart Inserter
Posts: 1828
Joined: Wed May 25, 2016 11:09 am
Contact:

[Rseding91] .15.26 GUI/remote change crash

Post by Nexela »

Using Creative Mode Mod and Nanobots Mod

https://mods.factorio.com/api/downloads ... _1.8.2.zip
https://mods.factorio.com/api/downloads ... _0.3.7.zip

Open a new game
Click the creative mode button at the top
Click Modding, Click Interfaces, Click Nanobots
Press ESCAPE and save game
Load Game Boom

Offending code (nanobots side) interface.lua Commenting these out causes the crash to stop and the save to load

Code: Select all

--Register with creative-mode for easy testing
if remote.interfaces["creative-mode"] and remote.interfaces["creative-mode"]["register_remote_function_to_modding_ui"] then
    remote.call("creative-mode", "register_remote_function_to_modding_ui", MOD.if_name, "print_global")
    remote.call("creative-mode", "register_remote_function_to_modding_ui", MOD.if_name, "reset_mod")
    remote.call("creative-mode", "register_remote_function_to_modding_ui", MOD.if_name, "reset_queue")
    remote.call("creative-mode", "register_remote_function_to_modding_ui", MOD.if_name, "console")
end

Code: Select all

 61.012 Loading script.dat: 19110 bytes.
  61.014 Checksum for script E:/Games/Factorio_Web/Factorio_Devel/temp/currently-playing/control.lua: 282129324
  61.044 Checksum for script __creative-mode__/control.lua: 3979402691
  61.050 Error CrashHandler.cpp:141: Exception Code: c0000005, Address: 0x000000013f7c8463
ModuleBase: 0x000000013f720000, ImageSize: 01215000, RelativeAddress: 000a8463
  61.050 Error CrashHandler.cpp:151: Exception Context:
rax=00000000249867f0, rbx=000000009f11b500, rcx=000000006cc3c670,
rdx=000000009f11b500, rsi=000000009f11b500, rdi=000000006cc3c670,
rip=000000013f7c8463, rsp=000000005193d8b0, rbp=000000005193da39,
 r8=0000000000000000,  r9=000000004fea7010, r10=000000006cc3c680,
r11=000000004fea6ed0, r12=0000000000000001, r13=000000000e995850,
r14=000000006d1cd320, r15=0000000000000000
  61.050 Crashed in E:\Games\Factorio_Web\Factorio_Devel\bin\x64\factorio.exe (0x000000013f720000 - 0x0000000140935000)
Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\cygwin64\tmp\factorio-qqimwx\libraries\stackwalker\stackwalker.cpp (923): StackWalker::ShowCallstack
c:\cygwin64\tmp\factorio-qqimwx\src\util\logger.cpp (364): Logger::writeStacktrace
c:\cygwin64\tmp\factorio-qqimwx\src\util\logger.cpp (421): Logger::logStacktrace
c:\cygwin64\tmp\factorio-qqimwx\src\util\crashhandler.cpp (105): CrashHandler::writeStackTrace
c:\cygwin64\tmp\factorio-qqimwx\src\util\crashhandler.cpp (177): CrashHandler::SehHandler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 000000007769BC10)
000000007769BC10 (kernel32): (filename not available): UnhandledExceptionFilter
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000777A0108)
00000000777A0108 (ntdll): (filename not available): EtwEventSetInformation
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000077737958)
0000000077737958 (ntdll): (filename not available): _C_specific_handler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 000000007774812D)
000000007774812D (ntdll): (filename not available): RtlDecodePointer
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 000000007773855F)
000000007773855F (ntdll): (filename not available): RtlUnwindEx
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 000000007776BCB8)
000000007776BCB8 (ntdll): (filename not available): KiUserExceptionDispatcher
c:\cygwin64\tmp\factorio-qqimwx\src\customgui\customgui.cpp (389): CustomGui::addMapping
c:\cygwin64\tmp\factorio-qqimwx\src\customgui\customguielement.cpp (61): CustomGuiElement::addModMappingRecursively
c:\cygwin64\tmp\factorio-qqimwx\src\customgui\customguielement.cpp (298): CustomGuiElement::add
c:\cygwin64\tmp\factorio-qqimwx\src\script\luaguielement.cpp (295): LuaGuiElement::luaAdd
c:\cygwin64\tmp\factorio-qqimwx\src\script\luabinder.hpp (312): LuaBinder<LuaRecipePrototype>::callWrapper
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\ldo.c (320): luaD_precall
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\lvm.c (710): luaV_execute
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\lapi.c (950): f_call
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\ldo.c (131): luaD_rawrunprotected
c:\cygwin64\tmp\factorio-qqimwx\src\script\luaremote.cpp (103): LuaInterface::runFunction
c:\cygwin64\tmp\factorio-qqimwx\src\script\luaremote.cpp (196): LuaRemote::luaRemoteCall
c:\cygwin64\tmp\factorio-qqimwx\src\script\luabinder.hpp (312): LuaBinder<LuaCommandProcessor>::callWrapper
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\ldo.c (320): luaD_precall
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\lvm.c (710): luaV_execute
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\lapi.c (950): f_call
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\ldo.c (131): luaD_rawrunprotected
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\lapi.c (976): lua_pcallk
c:\cygwin64\tmp\factorio-qqimwx\src\util\luahelper.cpp (1690): LuaHelper::packageDofile
c:\cygwin64\tmp\factorio-qqimwx\src\util\luahelper.cpp (1720): LuaHelper::packageRequireTryFile
c:\cygwin64\tmp\factorio-qqimwx\src\util\luahelper.cpp (1789): LuaHelper::packageRequire
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\ldo.c (320): luaD_precall
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\lvm.c (710): luaV_execute
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\lapi.c (950): f_call
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\ldo.c (131): luaD_rawrunprotected
c:\cygwin64\tmp\factorio-qqimwx\libraries\lua\lapi.c (976): lua_pcallk
c:\cygwin64\tmp\factorio-qqimwx\src\util\luahelper.cpp (1690): LuaHelper::packageDofile
c:\cygwin64\tmp\factorio-qqimwx\src\script\luagamescript.cpp (313): LuaGameScript::LuaGameScript
c:\cygwin64\tmp\factorio-qqimwx\src\script\luacontext.cpp (200): LuaContext::createScript
c:\cygwin64\tmp\factorio-qqimwx\src\script\luacontext.cpp (41): LuaContext::LuaContext
c:\cygwin64\tmp\factorio-qqimwx\src\scenario\scenario.cpp (424): Scenario::createLuaContext
c:\cygwin64\tmp\factorio-qqimwx\src\scenario\scenario.cpp (235): Scenario::loadFactory
c:\cygwin64\tmp\factorio-qqimwx\src\scenario\parallelscenarioloader.cpp (116): ParallelScenarioLoader::doLoad
c:\program files (x86)\microsoft visual studio 14.0\vc\include\thr\xthread (247): std::_LaunchPad<std::unique_ptr<std::tuple<void (__cdecl*)(ParallelScenarioLoader * __ptr64,MapDeserialiser * __ptr64,enum InputType,InputHandler * __ptr64,MultiplayerManagerBase * __ptr64,bool),ParallelScenarioLoader * __ptr64,MapDeserialiser * __ptr64,enum InputType,InputHandler * __ptr64,MultiplayerManagerBase * __ptr64,bool>,std::default_delete<std::tuple<void (__cdecl*)(ParallelScenarioLoader * __ptr64,MapDeserialiser * __ptr64,enum InputType,InputHandler * __ptr64,MultiplayerManagerBase * __ptr64,bool),ParallelScenarioLoader * __ptr64,MapDeserialiser * __ptr64,enum InputType,InputHandler * __ptr64,MultiplayerManagerBase * __ptr64,bool> > > >::_Run
c:\program files (x86)\microsoft visual studio 14.0\vc\include\thr\xthread (210): std::_Pad::_Call_func
d:\th\minkernel\crts\ucrt\src\appcrt\startup\thread.cpp (115): thread_start<unsigned int (__cdecl*)(void * __ptr64)>
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000776159CD)
00000000776159CD (kernel32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 000000007774A561)
000000007774A561 (ntdll): (filename not available): RtlUserThreadStart
Attachments
factorio-previous.log
(15.18 KiB) Downloaded 206 times

Rseding91
Factorio Staff
Factorio Staff
Posts: 14142
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [Rseding91] .15.26 GUI/remote change crash

Post by Rseding91 »

Thanks for the report. I've fixed it for the next version of 0.15 so attempting to do remote.call from outside of an event will result in an error instead of desyncs/crashes.
If you want to get ahold of me I'm almost always on Discord.

Post Reply

Return to “Resolved Problems and Bugs”