[SDL] SDL-surface is not removed on SDL_Quit()

Christian Spitzner spz at iis.fhg.de
Wed Feb 6 09:17:02 PST 2002


hi,

i'm working on a very complex multi-media player, using SDL for video 
output. therefore it is hard to produce a testcase, that mirrors my 
project with all that threads.
i know it would be easier for you to help me with having a testcase, but 
  it's impossible.

i wrote a simple test case, but there everything went fine, so i think 
it's a problem of my app. rather than a SDL problem, but hey - you are 
the ones who know much more about SDL and its implementions and i hope, 
someone has a clue to help me.

i run my app mostly under windows nt 4.0 (but the error is also occurs 
on win2k).

my problem:

i create a SDL_Surface and afterwards a YUVOverlay. and i do some 
blitting into this overlay.
after quiting the SDL (without freeing neither the overlay nor the 
surface), the Window is still visible and causes a seg fault, when it 
gets the focus or a mouse event or the like (this is not astonishing, 
because SDL has freed all its memory).

i debugged the SDL_Quit() call a bit an came to the WINAPI call
DestroyWindow(SDL_Window), which returns with the error code 5 
(ERROR_ACCESS_DENIED).
the 'window handle' (SDL_Window) is the same that CreateWindow() created.

so. does anybody know, what i do between creating the window and closing 
it, that makes me lose the access??
i have about 7 threads running, but creating the window and closing it 
is done in the same.


regards christian





More information about the SDL mailing list