Page 1 of 1

[0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Sun Dec 17, 2017 8:54 pm
by Ferlonas
Played as normal, replaced some fast inserters with stack inserters, replaced a wooden pole -> game crash

I managed to reproduce it, it should be possible by following the steps outlined in the linked image:
Image
http://prntscr.com/hosm7m

For readability:
1) Replace fast inserter with stack inserter
2) Place new wooden pole directly above old pole
3) Remove old pole -> game should crash

Attached savegame, log, dump and player data. as .zip file

Re: [0.16.5] Crash when removing wooden pole

Posted: Sun Dec 17, 2017 9:19 pm
by keyboard_surfer2
I got this error too

Re: [0.16.5] Crash when removing wooden pole

Posted: Sun Dec 17, 2017 9:24 pm
by g8orMVqO
I too got this error when fast replacing small with medium electric poles.

Re: [0.16.5] Crash when removing wooden pole

Posted: Sun Dec 17, 2017 9:26 pm
by detector42
Same problem here. Removing a couple of small poles on the attached save causes crashes consistently. A brand new world does not seem to have this issue.

Re: [0.16.5] Crash when removing wooden pole

Posted: Sun Dec 17, 2017 9:33 pm
by ZorangeZorange
Same issue, placed a wooden pole, went to remove one right under it, crashed.

Not sure if the attached are what you need?

Re: [0.16.5] Crash when removing wooden pole

Posted: Sun Dec 17, 2017 9:40 pm
by boskid
Same here.

I noticed that when removing second pole, first one tries to reconnect to electric network, but all poles around in range already have 5 connections. Maybe this will help narrow down this problem.

Re: [0.16.5] Crash when removing wooden pole

Posted: Sun Dec 17, 2017 9:53 pm
by poiuqwer78
Yep. That happens. Remove the highlighted pole -> *boom!*

Re: [0.16.5] Crash when removing wooden pole

Posted: Sun Dec 17, 2017 10:00 pm
by XDRosenheim
Having this issue with a substation.

Can be reproduced.
No mods.
Happens both with bots and pickup by hand.

See image:
Destroying the marked substation, will crash the game (See log)
Please note how THAT substation is connected to the big pole.
If the big pole is connected to the substation at the bottom of the picture, no crash will happen. No matter what substation is destroyed.
Removing all substations (that are shown in the picture) and placing them, having the top substation connect to the big pole again, will give a crash when removing that same substation.
Screencap at crash
Screencap at crash
Screenshot from 2017-12-17 23-04-33.png (525.03 KiB) Viewed 10763 times

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Mon Dec 18, 2017 12:25 am
by dir94
One more.
This pole:
Image

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Mon Dec 18, 2017 12:46 am
by sadkov
Reporting another occurrence in 0.16.5. Attaching the reproducible save and the log. To reproduce just remove the nearest pole to the player (pretty much where the player stands), no other actions needed to be done.

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Mon Dec 18, 2017 12:54 am
by Yarri
Same issue in 0.16.5

But remove not crash.
Only after place new element of electric (wood, stell etc)
factorio-current.log
(20.55 KiB) Downloaded 161 times
factorio-dump-current.dmp
(527.46 KiB) Downloaded 251 times

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Mon Dec 18, 2017 12:57 am
by posila
Thanks for all the reports.
Saves and simple reporductions steps were very helpful.
It is fixed for 0.16.6 (probably released sometime on Monday)

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Mon Dec 18, 2017 2:44 am
by Zarei
Was looking forward to making my first bug report, from my first crash ever in this game. Been playing since I think 0.11. Of course it's already solved. :D

Re: [0.16.5] Crash when removing wooden pole

Posted: Mon Dec 18, 2017 8:00 am
by EnigmaticAussie
boskid wrote:Same here.

I noticed that when removing second pole, first one tries to reconnect to electric network, but all poles around in range already have 5 connections. Maybe this will help narrow down this problem.

I'm also experiencing this issue.
Have replicated the crash several times; different scenarios, but always when interacting with a small power pole.

First scenario: (didn't collect crash dump sorry): manually connecting copper wire to a small power pole with MULTIPLE copper wire connections.
Second scenario: Removing a small power-pole which was connected to 2 other unconnected poles, but within connection distance.
Crash Dump

Code: Select all

10537.642 Error CrashHandler.cpp:419: Received SIGSEGV
Factorio crashed. Generating symbolized stacktrace, please wait ...
10540.875 Warning Logger.cpp:446: Symbols.size() == 15, usedSize == 12
#0  0x0000000000b0e71d in Logger::logStacktrace(StackTraceInfo*) at /tmp/factorio-x51gdL/src/Util/Logger.cpp:471
#1  0x0000000000687137 in CrashHandler::writeStackTrace(CrashHandler::CrashReason) at /tmp/factorio-x51gdL/src/Util/CrashHandler.cpp:127
#2  0x000000000068734a in CrashHandler::SignalHandler(int) at /tmp/factorio-x51gdL/src/Util/CrashHandler.cpp:421
#3  0x0000000000037140 in ?? at ??:0
#4  0x00000000009098d2 in ElectricEnergySource::drawIconsIfEmpty(DrawQueue&, Entity const*, bool) const at /tmp/factorio-x51gdL/src/Energy/ElectricEnergySource.cpp:296
#5  0x0000000000a54c2e in Combinator::draw(DrawQueue&) const at /tmp/factorio-x51gdL/src/Entity/Combinator.cpp:93
#6  0x00000000008542be in RenderParameters::shouldShowEntityInfo(Entity const*) const at /tmp/factorio-x51gdL/src/Graphics/RenderParameters.cpp:278
#7  0x0000000000854a05 in DeciderCombinator::draw(DrawQueue&) const at /tmp/factorio-x51gdL/src/Entity/DeciderCombinator.cpp:73
#8  0x00000000006893d5 in EntityRenderer::prepareRow(RenderData const&, int) at /tmp/factorio-x51gdL/src/Graphics/EntityRenderer.cpp:266
#9  0x00000000014811cf in EntityRenderer::threadJob(RenderData const&) at /tmp/factorio-x51gdL/src/Graphics/EntityRenderer.cpp:173 (discriminator 2)
#10 0x00000000000077fc in std::function<void ()>::operator=(decltype(nullptr)) at /usr/include/c++/7/bits/std_function.h:514
#11 (nil) in WorkerThread::loop() at /tmp/factorio-x51gdL/src/Util/WorkerThread.cpp:36
10544.115 Warning Logger.cpp:446: Symbols.size() == 14, usedSize == 11
10544.115 Error CrashHandler.cpp:128: Map tick at moment of crash: 970585
10544.115 Error Util.cpp:67: Unexpected error occurred.

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Mon Dec 18, 2017 10:26 am
by Il Grande Oli
If I could, I reply with the same problem.
I had some tests to reproduce it.
When I will power my train station and then I'll change some wires connections on the main node (like remove and reinsert a pole), it crashs.
It doesn't happen if I first remove the substation or those 4 extractor (that are covered by the unpowerted substation, too) or if I have only those 4 extractor and no one else kind of buildings in my new circuit (the train stop) that I'm going to supply.
My unpowered train station
My unpowered train station
Immagine.jpg (669.41 KiB) Viewed 10302 times
I hope this information could be useful!
So, now this bug gave me the opportunity to go to bed, hoping to see an upgrade with a resolution to continue with Factorio this night.

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Mon Dec 18, 2017 5:04 pm
by xoft
I think I have hit the same crash - at least the stacktrace seems the same:

Code: Select all

[...]
Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\cygwin64\tmp\factorio-itcwd3\libraries\stackwalker\stackwalker.cpp (923): StackWalker::ShowCallstack
c:\cygwin64\tmp\factorio-itcwd3\src\util\logger.cpp (371): Logger::writeStacktrace
c:\cygwin64\tmp\factorio-itcwd3\src\util\logger.cpp (470): Logger::logStacktrace
c:\cygwin64\tmp\factorio-itcwd3\src\util\crashhandler.cpp (127): CrashHandler::writeStackTrace
c:\cygwin64\tmp\factorio-itcwd3\src\util\crashhandler.cpp (423): CrashHandler::SignalHandler
d:\th\minkernel\crts\ucrt\src\appcrt\misc\exception_filter.cpp (219): _seh_filter_exe
d:\th\minkernel\crts\ucrt\src\appcrt\startup\thread.cpp (117): `thread_start<unsigned int (__cdecl*)(void * __ptr64)>'::`1'::filt$0
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 0000000140A0B4AC)
0000000140A0B4AC (factorio): (filename not available): __C_specific_handler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000774D812D)
00000000774D812D (ntdll): (filename not available): RtlDecodePointer
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000774C855F)
00000000774C855F (ntdll): (filename not available): RtlUnwindEx
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00000000774FBCB8)
00000000774FBCB8 (ntdll): (filename not available): KiUserExceptionDispatcher
c:\cygwin64\tmp\factorio-itcwd3\src\entity\inserter.cpp (1163): Inserter::getElectricEnergySource
c:\cygwin64\tmp\factorio-itcwd3\src\entity\entitysearch.hpp (98): ConstEntitySearchT<EntitySearchTypeInfo<Surface,Chunk> >::ConstEntitySearchT<EntitySearchTypeInfo<Surface,Chunk> ><<lambda_c448063383c701167096f00663493347> >
c:\cygwin64\tmp\factorio-itcwd3\src\entity\electricpole.cpp (316): ElectricPole::drawSelectionInfo
c:\cygwin64\tmp\factorio-itcwd3\src\graphics\buildingrenderer.cpp (735): BuildingRenderer::drawEntityToBeBuilt
c:\cygwin64\tmp\factorio-itcwd3\src\graphics\buildingrenderer.cpp (618): BuildingRenderer::drawEntityToBeBuilt
c:\cygwin64\tmp\factorio-itcwd3\src\graphics\buildingrenderer.cpp (158): BuildingRenderer::prepareBuildingInGame
c:\cygwin64\tmp\factorio-itcwd3\src\graphics\buildingrenderer.cpp (92): BuildingRenderer::prepare
c:\cygwin64\tmp\factorio-itcwd3\src\graphics\gamerenderer.cpp (148): GameRenderer::prepareJob
c:\cygwin64\tmp\factorio-itcwd3\src\graphics\gamerenderer.cpp (129): GameRenderer::prepare
c:\cygwin64\tmp\factorio-itcwd3\src\gameview.cpp (941): GameView::prepareRender
c:\cygwin64\tmp\factorio-itcwd3\src\mainloop.cpp (792): MainLoop::prepare
c:\cygwin64\tmp\factorio-itcwd3\src\mainloop.cpp (526): MainLoop::mainLoopStep
c:\cygwin64\tmp\factorio-itcwd3\src\mainloop.cpp (331): MainLoop::run
c:\cygwin64\tmp\factorio-itcwd3\src\main.cpp (1029): wmain
I'm playing Factorio 0.16.5 (from ZIP package) on Win7, no mods installed. I have an autosave just before the crash occured (lucky), but I am unable to reproduce the crash. I was removing a power pole (right next to the player in the savegame) when Factorio crashed. Loading the savegame and removing the pole now does nothing.

Here's the savegame, dump and log: http://xoft.cz/factorio/crash-report-1.7z (7.1 MiB)

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Mon Dec 18, 2017 5:29 pm
by c0bRa
Does this also occure, when a substation is set (by myself or by robot)?

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Mon Dec 18, 2017 5:50 pm
by posila
c0bRa wrote:Does this also occure, when a substation is set (by myself or by robot)?
Yeah, all sorts of stuff related to electric poles (including substations) is broken in 0.16.5 by the same thing. 0.16.6 with the fix should be out within 2 hours.

Re: [0.16.5] Crash when removing wooden pole on: "::draw" or "::drawInternal""

Posted: Tue Dec 19, 2017 12:03 am
by gullevek
I assume my crash is the same crash as described here.

0.16.5 on Mac 10.12.6
Hand remove a medium power pole and game crashes. If I use deconstruction planner it gets removed without a crash.
I can reproduced this every time.
I have attached a zip with save file, logs for both crashes I did (current/previous) and screenshot with the pole highlighted that crashes the game.