3dfsb-dev/3dfsb

Killing application drops you out at desktop at application resolution

Closed this issue · 7 comments

Hi Tom

I recently tried 3dfsb and I had it stall on me (I'll make another issue about that if I can reproduce). I then went to a virtual console and killed the application. The got me back to the desktop, but the resolution was still set to the application resolution.

I remember years ago this was a very common failure mode with games that go full screen, but it does not seem to be the case any more, so maybe some new ways of achieving full screen have been implemented, that has better revert-to-original-resolution mechanisms (or maybe the full screen applications I run now tend to crash less). With regards to new ways I handling this I remember Ryan Gordon started this discussion a while ago: http://www.phoronix.com/scan.php?page=news_item&px=MTIxNDg but I'm unsure if it ever came to fruition.

In any case. If there is no better/more modern way to do it, than the way it is done now, then please just ignore the issue.

Thanks for picking up this fun old application.

Regards Kenneth

Same thing here - usual resolution 1600x900, after killing 3dfsb it
stays at 1024x768.

On 14/01/15 11:29, Kenneth Nielsen wrote:

Hi Tom

I recently tried 3dfsb and I had it stall on me (I'll make another
issue about that if I can reproduce). I then went to a virtual console
and killed the application. The got me back to the desktop, but the
resolution was still set to the application resolution.

I remember years ago this was a very common failure mode with games
that go full screen, but it does not seem to be the case any more, so
maybe some new ways of achieving full screen have been implemented,
that has better revert-to-original-resolution mechanisms (or maybe the
full screen applications I run now tend to crash less). With regards
to new ways I handling this I remember Ryan Gordon started this
discussion a while ago:
http://www.phoronix.com/scan.php?page=news_item&px=MTIxNDg but I'm
unsure if it ever came to fruition.

In any case. If there is no better/more modern way to do it, than the
way it is done now, then please just ignore the issue.

Thanks for picking up this fun old application.

Regards Kenneth


Reply to this email directly or view it on GitHub
#5.

/--Regards, Alex/

Confirmed, I has this happened to me as well, although not recently...

In my opinion, the program should never hang. There have been some recent concurrency improvements that fix some things, so please make sure you use the latest version and indeed, create a seperate issue if this still happens. By the way, if it does ever hang again, you can attach a debugger to 3DFSB to see where and why it hangs; just switch to a virtual console (CTRL-ALT-F2) and do: "gdb -p $(pidof 3dfsb)". Then with "info threads", "bt" and "select-frame" you can see where the instruction pointer is at.

As for restoring the resolution, I looked into this and I conclude that in the long run, we should upgrade to SDL 2.0 and use SDL_WINDOW_FULLSCREEN_DESKTOP so the application never switches resolution in the first place. If anyone is interested in helping out, that would be great. It shouldn't be too hard, since we don't rely on SDL very heavily. Starting point for migrating SDL 1.2 to 2.0: https://wiki.libsdl.org/MigrationGuide

Hi Tom

Thanks for your reply. With regards to the hang, that was a little imprecise, what I experienced was that when entering a folder with many videos it just never showed anything and kept using a lot of CPU. So one possible explanation is that it is simply busy creating previews. In any case I will look into it some more and thanks for the debugging information.

With regards to SDL 2.0 that would have been my guess as well, that there had been some improvement there. Unfortunately, I'm afraid that both my C-skills and my extra spare time to learn a new language is pretty scarce, so at this point I can only contribute bug reports.

Hmmm, was that with a recent version? The old version would show the "WARPING..." screen until all textures were loaded and yes, that can take hours :-) But the new one show "warp" you into the folder almost instantly, and will load the textures asynchronously in the background while you are browsing... Can you try again and see if it is better now? Thanks for testing!

@tomvanbraeckel I was at @123ff1c9173df62dee9724c5300b753f4d585967 (Fri Jan 9 11:55:23 2015 +0100). But yes, I will try again, and as already discussed, open a proper PR if I still see the problem.

Closing because the problem was resolved.