Gooey GUI - a peculiar way to crash FS!
Posted: Tue Apr 23, 2019 9:39 pm
Hi all,
While I was fiddling around trying to reproduce Spogg's strange Ruby GUI shut-down, my little test rig uncovered something else rather bizarre - or rather, crashtastic! This is on FS 3.0.6 in Windows 10, and, for brave souls, here's a demo schematic (note, it is safe to open as posted, I'll warn you in the following instructions when to put your crash-helmet on!!)
The only module contains a Ruby counter of GUI redraws - separated into those that are caused by the trigger button input ("Triggered"), and all others ("Workspace"). First, turn it on by setting the 'Enable' boolean to true - then click around the workspace, move the module, etc. you'll see how often it gets redrawn without needing a trigger to the input - even for mouse actions nowhere near the module.
We can also see that Navigator strip previews are drawn separately - if you make the Navigator really big so that you can read the text on the module, you'll notice that it's redraw count is often one more than in the workspace.
Now, and this is very important, make sure the module is NOT selected!!! And then, connect the "Debug" text box to the "Debug" output of the module. Now, WITHOUT CLICKING ON THE MODULE, do some more mousey stuff. Not a lot different than before, except that the count in the text box does count the Navigator redraw (and a bit of other stuff I needed for debugging.)
CRASH-HELMET TIME!!!
Select the module, and while watching the counts, have a play with the icon strip at the bottom of the module; try to rename it, for example...
...and then, if it works like it does here, force quit FS and dismiss the "Report this to Microsoft" window!
I guess it's some kind of feedback loop with the redraws, but I haven't a clue why - none of the other behaviour hints that this would be a problem at all. And why only the module icon strip?
While I was fiddling around trying to reproduce Spogg's strange Ruby GUI shut-down, my little test rig uncovered something else rather bizarre - or rather, crashtastic! This is on FS 3.0.6 in Windows 10, and, for brave souls, here's a demo schematic (note, it is safe to open as posted, I'll warn you in the following instructions when to put your crash-helmet on!!)
The only module contains a Ruby counter of GUI redraws - separated into those that are caused by the trigger button input ("Triggered"), and all others ("Workspace"). First, turn it on by setting the 'Enable' boolean to true - then click around the workspace, move the module, etc. you'll see how often it gets redrawn without needing a trigger to the input - even for mouse actions nowhere near the module.
We can also see that Navigator strip previews are drawn separately - if you make the Navigator really big so that you can read the text on the module, you'll notice that it's redraw count is often one more than in the workspace.
Now, and this is very important, make sure the module is NOT selected!!! And then, connect the "Debug" text box to the "Debug" output of the module. Now, WITHOUT CLICKING ON THE MODULE, do some more mousey stuff. Not a lot different than before, except that the count in the text box does count the Navigator redraw (and a bit of other stuff I needed for debugging.)
CRASH-HELMET TIME!!!
Select the module, and while watching the counts, have a play with the icon strip at the bottom of the module; try to rename it, for example...
...and then, if it works like it does here, force quit FS and dismiss the "Report this to Microsoft" window!
I guess it's some kind of feedback loop with the redraws, but I haven't a clue why - none of the other behaviour hints that this would be a problem at all. And why only the module icon strip?