Page 1 of 1

[Rseding91] [15.23] Crash on start with script.

Posted: Fri Jun 23, 2017 12:42 pm
by Mylon
From the log:

Code: Select all

5843.475 Script control.lua:88: Attempt to write to undeclared var game
Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\cygwin64\tmp\factorio-edos8q\libraries\stackwalker\stackwalker.cpp (923): StackWalker::ShowCallstack
c:\cygwin64\tmp\factorio-edos8q\src\util\logger.cpp (364): Logger::writeStacktrace
c:\cygwin64\tmp\factorio-edos8q\src\util\logger.cpp (421): Logger::logStacktrace
c:\cygwin64\tmp\factorio-edos8q\src\util\crashhandler.cpp (105): CrashHandler::writeStackTrace
c:\cygwin64\tmp\factorio-edos8q\src\util\crashhandler.cpp (235): CrashHandler::SignalHandler
d:\th\minkernel\crts\ucrt\src\appcrt\misc\signal.cpp (516): raise
d:\th\minkernel\crts\ucrt\src\appcrt\startup\abort.cpp (71): abort
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\ldo.c (119): luaD_throw
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\ldebug.c (569): luaG_errormsg
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\ldebug.c (578): luaG_runerror
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\ldebug.c (512): luaG_typeerror
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\lvm.c (126): luaV_gettable
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\lvm.c (585): luaV_execute
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\ldo.c (394): luaD_call
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\lvm.c (104): callTM
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\lvm.c (168): luaV_settable
c:\cygwin64\tmp\factorio-edos8q\libraries\lua\lapi.c (749): lua_setglobal
c:\cygwin64\tmp\factorio-edos8q\src\script\luagamescript.cpp (319): LuaGameScript::LuaGameScript
c:\cygwin64\tmp\factorio-edos8q\src\script\luacontext.cpp (200): LuaContext::createScript
c:\cygwin64\tmp\factorio-edos8q\src\script\luacontext.cpp (36): LuaContext::LuaContext
c:\cygwin64\tmp\factorio-edos8q\src\scenario\scenario.cpp (424): Scenario::createLuaContext
c:\cygwin64\tmp\factorio-edos8q\src\scenario\scenario.cpp (235): Scenario::loadFactory
c:\cygwin64\tmp\factorio-edos8q\src\appmanager.cpp (410): AppManager::createGame
c:\cygwin64\tmp\factorio-edos8q\src\appmanagerstates.cpp (1634): InGenerateMapDialog::process
c:\cygwin64\tmp\factorio-edos8q\src\appmanager.cpp (201): AppManager::process
c:\cygwin64\tmp\factorio-edos8q\src\mainloop.cpp (393): MainLoop::prePrepare
c:\cygwin64\tmp\factorio-edos8q\src\mainloop.cpp (472): MainLoop::mainLoopStep
c:\cygwin64\tmp\factorio-edos8q\src\mainloop.cpp (299): MainLoop::run
c:\cygwin64\tmp\factorio-edos8q\src\main.cpp (1008): wmain
f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl (253): __scrt_common_main_seh
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000775C59CD)
00000000775C59CD (kernel32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000776FA561)
00000000776FA561 (ntdll): (filename not available): RtlUserThreadStart
5847.759 Error Util.cpp:80: Unexpected error occurred. If you're running the latest version of the game you can help us solve the problem by posting the contents of the log file on the Factorio forums.
Please also include the save file(s), any mods you may be using, and any steps you know of to reproduce the crash.
The script that made it happen:

Code: Select all

--Time for the debug code.  If any (not global.) globals are written to at this point, an error will be thrown.
--eg, x = 2 will throw an error because it's not global.x
setmetatable(_G, {
	__newindex = function(_, n)
		log("Attempt to write to undeclared var " .. n)
		game.print("Attempt to write to undeclared var " .. n)
	end
})
Note that I was able to insert this code into the console at runtime and it ran as expected. But putting it in a script (as in, not even triggered by an event) caused an error.

Re: Crash on new game start

Posted: Fri Jun 23, 2017 2:12 pm
by Loewchen
Post the complete log please.

Re: Crash on new game start

Posted: Fri Jun 23, 2017 2:25 pm
by Mylon
Complete log file attached.

Re: [Rseding91] [15.23] Crash on start with script.

Posted: Mon Jun 26, 2017 8:48 am
by Rseding91
Thanks for the report. This should be fixed for the next version of 0.15.