[0.13.15] MP Crash when entering big string into gui txtfld

This subforum contains all the issues which we already resolved.
User avatar
Killkrog
Long Handed Inserter
Long Handed Inserter
Posts: 75
Joined: Thu Jun 09, 2016 1:04 pm
Contact:

[0.13.15] MP Crash when entering big string into gui txtfld

Post by Killkrog »

Multiplayer game.
GUI creates a text input field. Copy/Pasting a long string (77k characters) results into crash.

Log File:

Code: Select all

   0.000 2016-08-06 18:04:02; Factorio 0.13.15 (build 23843, win64, alpha)
   0.000 Operating system: Windows 7 Service Pack 1
   0.000 Program arguments: "E:\Spiele\Factorio\bin\x64\Factorio.exe" 
   0.000 Read data path: E:/Spiele/Factorio/data
   0.000 Write data path: E:/Spiele/Factorio
   0.000 Binaries path: E:/Spiele/Factorio/bin
   0.011 Graphics options: [FullScreen: true] [VSync: true] [UIScale: 100%] [MultiSampling: OFF] [Graphics quality: normal] [Video memory usage: all] [Light scale: 100%] [Screen: 0] [DXT: false]
   0.012 Available display adapters: 2
   0.012  [0]: \\.\DISPLAY1 - NVIDIA GeForce GTX 670 {0x80005, [0,0], 1920x1080, 32bit, 60Hz}
   0.012  [1]: \\.\DISPLAY2 - NVIDIA GeForce GTX 670 {0x80001, [-1920,0], 1920x1080, 32bit, 60Hz}
   0.012 Create display on adapter 0. Size 1280x720 at position [310, 162].
   0.192 Initialised OpenGL:[0] GeForce GTX 670/PCIe/SSE2; driver: 4.5.0 NVIDIA 347.52
   0.192     Video memory size (dedicated/total available/current available): 2048/2048/1746 MB
   0.210 Desktop composition is active.
   0.295 Loading mod core 0.0.0 (data.lua)
   0.300 Loading mod base 0.13.15 (data.lua)
   0.397 Loading mod FARL 0.5.36 (data.lua)
   0.457 Loading mod KBlueprints 1.1.9 (data.lua)
   0.521 Loading mod KMisc 1.0.0 (data.lua)
   0.582 Loading mod FARL 0.5.36 (data-updates.lua)
   0.650 Loading mod rso-mod 2.0.11 (data-updates.lua)
   0.711 Loading mod FARL 0.5.36 (data-final-fixes.lua)
   0.785 Checksum for core: 2228900852
   0.785 Checksum for mod base: 2626002353
   0.786 Checksum for mod FARL: 1093886923
   0.786 Checksum for mod KBlueprints: 2250577784
   0.786 Checksum for mod KMisc: 330675315
   0.786 Checksum for mod KUndecorator: 0
   0.786 Checksum for mod rso-mod: 1874398137
   1.135 Info PlayerData.cpp:45: Local player-data.json available, timestamp 1470499431
   1.135 Info PlayerData.cpp:52: Cloud player-data.json unavailable
   1.244 Initial atlas bitmap size is 16384
   1.251 Created atlas bitmap 16384x9335
   1.252 Created atlas bitmap 4096x968
   8.400 Sprites loaded
   8.400 Convert atlas 4096x968 to: trilinear-filtering 
   8.446 Loading sounds...
   9.948 Custom inputs active: 2
   9.948 Info Updater.cpp:749: Downloading https://www.factorio.com/updater/get-available-versions?username=Killkrog&token=<private>&apiVersion=2
  10.855 0 packages available to download (experimental updates enabled).
  10.903 Factorio initialised
  16.843 Loading map E:\Spiele\Factorio\saves\Gigabase.zip
  16.871 Info Scenario.cpp:127: Map version 0.13.15-0
  16.965 Checksum for script E:/Spiele/Factorio/temp/currently-playing/control.lua: 900459546
  16.974 Checksum for script __FARL__/control.lua: 2812094619
  16.984 Checksum for script __KBlueprints__/control.lua: 931042014
  16.985 Checksum for script __KMisc__/control.lua: 4169798862
  16.987 Checksum for script __KUndecorator__/control.lua: 210631446
  16.997 Checksum for script __rso-mod__/control.lua: 3841068283
  28.948 Info Router.cpp:558: Router peerID(65535) shutting down.
  28.948 Info Router.cpp:594: Router state -> Disconnected
  28.949 Info MultiplayerManager.cpp:996: networkTick(0) mapTick(-1) changing state from(Ready) to(PreparedToHostGame)
  28.949 Info MultiplayerManager.cpp:996: networkTick(0) mapTick(-1) changing state from(PreparedToHostGame) to(CreatingGame)
  28.949 Loading map E:\Spiele\Factorio\saves\Gigabase.zip
  28.976 Info Scenario.cpp:127: Map version 0.13.15-0
  29.067 Checksum for script E:/Spiele/Factorio/temp/currently-playing/control.lua: 900459546
  29.075 Checksum for script __FARL__/control.lua: 2812094619
  29.085 Checksum for script __KBlueprints__/control.lua: 931042014
  29.086 Checksum for script __KMisc__/control.lua: 4169798862
  29.087 Checksum for script __KUndecorator__/control.lua: 210631446
  29.098 Checksum for script __rso-mod__/control.lua: 3841068283
  29.104 Info WindowsUDPSocket.cpp:61: Opening socket at port (2300)
  29.104 Info Router.cpp:594: Router state -> Connected
  29.104 Info Synchronizer.cpp:56: NetworkTick(0) initialized Synchronizer local peer(0) latency(6).
  29.104 Hosting game at port 2300, peerID 0, session magic 2703
  29.104 Info MultiplayerManager.cpp:996: networkTick(0) mapTick(27753) changing state from(CreatingGame) to(InGame)
  29.104 Info NetworkInputHandler.cpp:45: mapTick(27753) networkTick(0) initialized NetworkInputHandler local peer(0).
  29.204 Info MultiplayerManager.cpp:1527: Received peer info for peer(0) username(Killkrog).
  29.204 Info MultiplayerManager.cpp:1143: networkTick(6) mapTick(27759) received stateChanged peerID(0) oldState(Ready) newState(CreatingGame)
  29.204 Info MultiplayerManager.cpp:1143: networkTick(6) mapTick(27759) received stateChanged peerID(0) oldState(CreatingGame) newState(InGame)
  29.238 Info NetworkInputHandler.cpp:754: mapTick(27762) networkTick(9) connecting to player(Killkrog).
  29.238 Info NetworkInputHandler.cpp:608: assigning playerIndex(0) to peer(0)
  29.238 Info GameActionHandler.cpp:2663: MapTick(27762) processed PlayerJoinGame peerID(0) playerIndex(0) mode(connect)
  31.454 Connection request(type(ConnectionRequest) applicationVersion(0.13.15 (build 23843, win64, alpha)) activeMods((FARL 0.5.36) (KBlueprints 1.1.9) (KMisc 1.0.0) (KUndecorator 1.0.0) (base 0.13.15) (rso-mod 2.0.11) ) hasPassword(no) connectionRequestID(58304)) from(77.179.217.23:56631)
  31.454 Info Router.cpp:687: NetworkTick(141) replying to connectionRequest for address(77.179.217.23:56631).
  31.554 Info Router.cpp:913: networkTick(147) adding peer(1) address(77.179.217.23:56631) sending connectionAccept(true)
  31.554 Info Router.cpp:721: networkTick(147) sending connectionAccept to address(77.179.217.23:56631) connectionRequestID(58304) newPeerID(1)
  31.554 Info Synchronizer.cpp:522: networkTick(147) adding peer(1) success(true).
  31.721 Info MultiplayerManager.cpp:1527: Received peer info for peer(0) username(Killkrog).
  31.721 Info MultiplayerManager.cpp:1143: networkTick(153) mapTick(27910) received stateChanged peerID(0) oldState(InGame) newState(InGame)
  31.721 Info MultiplayerManager.cpp:1527: Received peer info for peer(1) username(Andalamar).
  31.721 Info MultiplayerManager.cpp:1143: networkTick(153) mapTick(27910) received stateChanged peerID(1) oldState(Ready) newState(Connecting)
  31.721 Info NetworkInputHandler.cpp:524: expectedMapTick(27910) adding peer(1).
  31.721 Info MultiplayerManager.cpp:1527: Received peer info for peer(1) username(Andalamar).
  31.721 Info MultiplayerManager.cpp:1143: networkTick(153) mapTick(27910) received stateChanged peerID(1) oldState(Connecting) newState(Connecting)
  31.721 Info MultiplayerManager.cpp:1143: networkTick(153) mapTick(27910) received stateChanged peerID(1) oldState(Connecting) newState(VerifyingConnection)
  31.937 Info MultiplayerManager.cpp:1143: networkTick(166) mapTick(27911) received stateChanged peerID(1) oldState(VerifyingConnection) newState(ConnectedWaitingForMap)
  31.937 Info MultiplayerManager.cpp:996: networkTick(166) mapTick(27911) changing state from(InGame) to(InGameAligning)
  31.937 Info MultiplayerManager.cpp:1818: networkTick(166) mapTick(27911) starting mapAlign
  32.037 Info MultiplayerManager.cpp:1143: networkTick(172) mapTick(27911) received stateChanged peerID(0) oldState(InGame) newState(InGameAligning)
  32.037 Info MultiplayerManager.cpp:1752: networkTick(172) mapTick(27911) sending mapAlignAction
  32.137 Info MultiplayerManager.cpp:1390: networkTick(178) mapTick(27911) received MapAlignAction from peer(0), mapAlignTick(27912) appliedTickClosuresCount(0)
  32.137 Info MultiplayerManager.cpp:1834: networkTick(179) mapTick(27911) mapAlign finished targetTick(27912) updating map and running the tasks ...
  32.137 Info MultiplayerManager.cpp:1706: networkTick(179) mapTick(27911) peerID(0) fullStateLog: local state(InGameAligning) local peers(((peerID(0) state(InGameAligning) mapAlignTick(27912))
((peerID(1) state(ConnectedWaitingForMap) mapAlignTick(-1))
)
  32.137 Info MultiplayerManager.cpp:1853: maptick(27912) crc before applying all ticks: -754743871
  32.137 Info NetworkInputHandler.cpp:670: applyAllTickClosures: expectedMapTick(27912) lastTickApplied(27903) referenceMapTick(27912) networkTick(179)
  32.137 Info NetworkInputHandler.cpp:694: applyAllTickClosures: applying tickClosure(tick(27904) inputActions((CheckCRCHeuristic) ) ) for peer(0)
  32.138 Info NetworkInputHandler.cpp:694: applyAllTickClosures: applying tickClosure(tick(27905) inputActions((ChangeWalkingState) (CheckCRCHeuristic) ) ) for peer(0)
  32.138 Info NetworkInputHandler.cpp:694: applyAllTickClosures: applying tickClosure(tick(27906) inputActions((CheckCRCHeuristic) ) ) for peer(0)
  32.138 Info NetworkInputHandler.cpp:694: applyAllTickClosures: applying tickClosure(tick(27907) inputActions((CheckCRCHeuristic) ) ) for peer(0)
  32.138 Info NetworkInputHandler.cpp:694: applyAllTickClosures: applying tickClosure(tick(27908) inputActions((ChangeWalkingState) (CheckCRCHeuristic) ) ) for peer(0)
  32.138 Info NetworkInputHandler.cpp:694: applyAllTickClosures: applying tickClosure(tick(27909) inputActions((CheckCRCHeuristic) ) ) for peer(0)
  32.138 Info NetworkInputHandler.cpp:694: applyAllTickClosures: applying tickClosure(tick(27910) inputActions((CheckCRCHeuristic) ) ) for peer(0)
  32.138 Info MultiplayerManager.cpp:1861: maptick(27912) crc after applying all ticks: -1860805365
  32.138 Info MultiplayerManager.cpp:996: networkTick(179) mapTick(27912) changing state from(InGameAligning) to(InGameAligned)
  32.138 Info MultiplayerManager.cpp:996: networkTick(179) mapTick(27912) changing state from(InGameAligned) to(InGameSavingMap)
  32.254 Info MultiplayerManager.cpp:1143: networkTick(185) mapTick(27912) received stateChanged peerID(0) oldState(InGameAligning) newState(InGameAligned)
  32.254 Info MultiplayerManager.cpp:1143: networkTick(185) mapTick(27912) received stateChanged peerID(0) oldState(InGameAligned) newState(InGameSavingMap)
  32.304 Info MultiplayerManager.cpp:996: networkTick(189) mapTick(27912) changing state from(InGameSavingMap) to(InGameSendingMap)
  32.312 Info MultiplayerManager.cpp:1260: MapTick(27912) Serving map(E) for peer(1) size(1535217) crc(818887760)
  32.421 Info MultiplayerManager.cpp:1143: networkTick(195) mapTick(27912) received stateChanged peerID(0) oldState(InGameSavingMap) newState(InGameSendingMap)
  32.521 Info MultiplayerManager.cpp:1143: networkTick(201) mapTick(27912) received stateChanged peerID(1) oldState(ConnectedWaitingForMap) newState(ConnectedDownloadingMap)
  38.521 Info MultiplayerManager.cpp:1143: networkTick(561) mapTick(27912) received stateChanged peerID(1) oldState(ConnectedDownloadingMap) newState(ConnectedLoadingMap)
  38.521 Canceling serving for peer 1
  38.521 Info MultiplayerManager.cpp:996: networkTick(561) mapTick(27912) changing state from(InGameSendingMap) to(InGameWaitingForOthers)
  38.621 Info MultiplayerManager.cpp:1143: networkTick(567) mapTick(27912) received stateChanged peerID(0) oldState(InGameSendingMap) newState(InGameWaitingForOthers)
  38.687 Info MultiplayerManager.cpp:1143: networkTick(571) mapTick(27912) received stateChanged peerID(1) oldState(ConnectedLoadingMap) newState(InGameWaitingForOthers)
  38.687 Info MultiplayerManager.cpp:1342: networkTick(571) mapTick(27912) stopping mapAlign
  38.687 Info MultiplayerManager.cpp:996: networkTick(571) mapTick(27912) changing state from(InGameWaitingForOthers) to(InGame)
  38.687 Info MultiplayerManager.cpp:1706: networkTick(571) mapTick(27912) peerID(0) fullStateLog: local state(InGame) local peers(((peerID(0) state(InGameWaitingForOthers) mapAlignTick(-1))
((peerID(1) state(InGameWaitingForOthers) mapAlignTick(-1))
)
  38.787 Info MultiplayerManager.cpp:1143: networkTick(577) mapTick(27918) received stateChanged peerID(0) oldState(InGameWaitingForOthers) newState(InGame)
  38.787 Info MultiplayerManager.cpp:1143: networkTick(577) mapTick(27918) received stateChanged peerID(1) oldState(InGameWaitingForOthers) newState(InGame)
  38.821 Info NetworkInputHandler.cpp:608: assigning playerIndex(1) to peer(1)
  38.821 Info GameActionHandler.cpp:2663: MapTick(27921) processed PlayerJoinGame peerID(1) playerIndex(1) mode(connect)
11339.312 Warning WorkerThread.cpp:42: Thread exception: Sendto (77.179.217.23:56631) failed: Eine Nachricht, die über einen Datagrammsocket gesendet wurde, war für den internen Nachrichtenpuffer oder ein anderes Netzwerklimit zu groß, oder der Puffer für den Datagrammempfang war für das Datagramm zu klein.
.
Last line basically says that the message is too long for either the writing and/or reading buffer.

Cheers!
Loewchen
Global Moderator
Global Moderator
Posts: 10310
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: [0.13.15] MP Crash when entering big string into gui txtfld

Post by Loewchen »

Just to make sure:
The game crashed and did not just throw you back in the menu right?
Did you get an error message after the game crashed?
User avatar
Killkrog
Long Handed Inserter
Long Handed Inserter
Posts: 75
Joined: Thu Jun 09, 2016 1:04 pm
Contact:

Re: [0.13.15] MP Crash when entering big string into gui txtfld

Post by Killkrog »

Game completely froze for me (host), all other clients were kicked with message that connection to server was lost.
User avatar
TruePikachu
Filter Inserter
Filter Inserter
Posts: 978
Joined: Sat Apr 09, 2016 8:39 pm
Contact:

Re: [0.13.15] MP Crash when entering big string into gui txtfld

Post by TruePikachu »

It seems to me like the thread exited, but nothing got notified and everything ended up waiting on the thread which no longer exists. Of course, that isn't going to be the root bug, just the reason why it didn't crash with a backtrace and everything.

If the server pasted the string, the transmission buffer was too small for it; if a client pasted the string, the receiving buffer was too small. Either way, it is the responsibility of the code responsible for the GUI element to ensure that whatever was input won't cause problems.
Rseding91
Factorio Staff
Factorio Staff
Posts: 15997
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [0.13.15] MP Crash when entering big string into gui txtfld

Post by Rseding91 »

This is a known issue that will be resolved in 0.14.

Console messages are sent as one packet over the network so it's trying to send a 77 KB packet which doesn't work and so it crashes.
If you want to get ahold of me I'm almost always on Discord.
User avatar
Killkrog
Long Handed Inserter
Long Handed Inserter
Posts: 75
Joined: Thu Jun 09, 2016 1:04 pm
Contact:

Re: [0.13.15] MP Crash when entering big string into gui txtfld

Post by Killkrog »

Rseding91 wrote:Console messages are sent as one packet...
Come on guys ^^

Well then, lock the door to kovarex' room, so he gets some work done, can't wait for 0.14 ;)
bk5115545
Fast Inserter
Fast Inserter
Posts: 123
Joined: Sun Apr 03, 2016 7:00 pm
Contact:

Re: [0.13.15] MP Crash when entering big string into gui txtfld

Post by bk5115545 »

Should this be moved to fixed?
Rseding91
Factorio Staff
Factorio Staff
Posts: 15997
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [0.13.15] MP Crash when entering big string into gui txtfld

Post by Rseding91 »

bk5115545 wrote:Should this be moved to fixed?
I don't believe it has been addressed (yet).
If you want to get ahold of me I'm almost always on Discord.
kovarex
Factorio Staff
Factorio Staff
Posts: 8298
Joined: Wed Feb 06, 2013 12:00 am
Contact:

Re: [0.13.15] MP Crash when entering big string into gui txtfld

Post by kovarex »

Yes, it is waiting for 0.15.

I will probably wait for tomas to make the "upload/download by input actions" logic for blueprints and use it (make someone use it) to solve this issue as well.
Post Reply

Return to “Resolved Problems and Bugs”