We are currently migrating Bugzilla to GitHub issues.
Any changes made to the bug tracker now will be lost, so please do not post new bugs or make changes to them.
When we're done, all bug URLs will redirect to their equivalent location on the new bug tracker.

Bug 1251

Summary: fbcon driver exit clears the framebuffer unconditionnally
Product: SDL Reporter: Paul Cercueil <paul>
Component: videoAssignee: Sam Lantinga <slouken>
Status: RESOLVED ENDOFLIFE QA Contact: Sam Lantinga <slouken>
Severity: enhancement    
Priority: P2 CC: icculus, pcercuei
Version: 1.2.14   
Hardware: All   
OS: Linux   
Attachments: Patch which implements the previously described behaviour.
New patch, with fix for double buffering
Patch to remove the last frame duplication when not using double buffering

Description Paul Cercueil 2011-07-23 11:11:37 UTC
Created attachment 652 [details]
Patch which implements the previously described behaviour.

It might be a good idea to let the user choose whether the framebuffer should be cleared (set to black) or not when a SDL application exits, using environment variables for instance.

The attached patch implements this behaviour.
Comment 1 Paul Cercueil 2011-08-14 17:33:30 UTC
Created attachment 673 [details]
New patch, with fix for double buffering
Comment 2 Paul Cercueil 2011-08-14 17:33:56 UTC
I should explain why such a modification is interesting.

I am currently working on a small SDL graphical user interface for handhelds devices, called GMenu2X (see http://en.qi-hardware.com/wiki/Gmenu2x). It allows the user to boot applications, and a loading screen is drawn showing which application is being launched. As GMenu2X is exited when launching a binary, SDL_Quit() is called before the selected application eventually starts. That function clears the framebuffer, and as a result the loading screen is not visible.

This patch allow us to specify that we don't want the framebuffer to be cleared on exit.


In case of double buffering, it is necessary to duplicate the latest image to keep that one on the framebuffer, instead of displaying an older image. The new patch implements this feature.
Comment 3 Ryan C. Gordon 2011-08-23 13:49:54 UTC
This is now hg changeset 36cbc5292592, thanks!

--ryan.
Comment 4 Paul Cercueil 2013-05-22 16:30:25 UTC
(In reply to comment #2)
> In case of double buffering, it is necessary to duplicate the latest image
> to keep that one on the framebuffer, instead of displaying an older image.
> The new patch implements this feature.

This previous patch, now upstream in SDL 1.2.15, duplicates the latest image even if the application does not use double buffering. I will attach a new patch (for 1.2.15) to fix this issue.
Comment 5 Paul Cercueil 2013-05-22 16:32:19 UTC
Created attachment 1148 [details]
Patch to remove the last frame duplication when not using double buffering
Comment 6 Ryan C. Gordon 2015-08-25 09:38:21 UTC
Hello, and sorry if you're getting several copies of this message by email, since we are closing many bugs at once here.

We have decided to mark all SDL 1.2-related bugs as RESOLVED ENDOFLIFE, as we don't intend to work on SDL 1.2 any further, but didn't want to mark a large quantity of bugs as RESOLVED WONTFIX, to clearly show what was left unattended to and make it easily searchable.

Our current focus is on SDL 2.0.

If you are still having problems with an ENDOFLIFE bug, your absolute best option is to move your program to SDL2, as it will likely fix the problem by default, and give you access to modern platforms and tons of super-cool new features.

Failing that, we _will_ accept small patches to fix these issues, and put them in revision control, although we do not intend to do any further official 1.2 releases.

Failing that, please feel free to contact me directly by email (icculus@icculus.org) and we'll try to find some way to help you out of your situation.

Thank you,
--ryan.