Platform: macOS 10.14.5
Hardware: AMD 7970Ghz (R9 280X) 3GB, in Mac Pro 5.1 (Hackintosh faked)
Factorio will freeze with a black screen for 30-35 seconds if the user opens it when configured to be not in Full Screen mode, then toggles it into Full Screen using Settings->Graphics, then uses Mission Control to take it out of Full Screen and then back in again. This black screen will recover on its own after ~35 seconds, however if during this time the user again drags it out of full screen using Mission Control, the game will crash.
Steps to reproduce:
- Launch the game with Full Screen disabled.
- Upon reaching main menu, go to Settings->Graphics and turn Full Screen on.
- Now open Mission Control, and drag Factorio out of Full Screen mode, back to the desktop. This effectively reverts the Full Screen setting, although Settings->Graphics will still say Full Screen is on (normally this causes no issues.)
- Still in Mission Control, drag Factorio back up to the Desktops/Spaces bar at the top, putting it back into Full Screen.
- There will be a pause/stutter, and the Factorio window will now appear black.
- If you click into Factorio and wait 30-35 seconds, eventually this black screen will correct itself, and the game appears as normal and runs fine (though it will go black again for another ~30 seconds if steps 3-4 are repeated.)
- However if instead you drag Factorio back down to the current desktop, causing it to try and go out of Full Screen mode again, it will now crash.
The trigger appears to be the combination of loading the game with Settings->Graphics->Full Screen = off and then changing Settings->Graphics->Full Screen to on. If the game is set to Full Screen at load time then it is fine to toggle it in and out of full screen mode, both using Settings->Graphics and Mission Control. If it's loaded with Full Screen=off, then it's still OK to use Mission Control to bring it in and out of full screen, as long as Settings->Graphics->Full Screen is not set to on.
I first had this crash a day or two ago on 0.17.64, and worked out how to reproduce it tonight on 0.17.65. I can't tell if the issue existed before .64, as I normally always have the game set to Full Screen at launch so I wouldn't have been able to trigger it until this week.
Log file: