SDL, framebuffer, SIGSEGV

Ladislav Vaiz spam na nagano.cz
Úterý Prosinec 12 08:09:25 CET 2006


Petr Stehlik wrote:

>Pavel Kankovsky pise v Pa 08. 12. 2006 v 21:54 +0100:
>  
>
>>On Wed, 6 Dec 2006, Ladislav Vaiz wrote:
>>
>>    
>>
>>>jak by se mel chovat program vyuzivajici libSDL, kdyz zachyti SIGSEGV?
>>>Pod X11 se okno normalne zavre, ale pod framebufferem se konzole
>>>zasekne, nejde ani prepnout konzole, nic.
>>>      
>>>
>>Za starych casu s libsvga se delalo to, ze se proces po inicializaci 
>>grafiky forknul a predek jen cekal az potomek chcipne (at uz normalne, 
>>nebo nasledkem nejake havarie), a pak po nem uklidil.
>>
>>Treba to lze udelat i s SDL.
>>    
>>
>
>libSDL ma nejaky interni mechanismus, aby po sobe uklidila (SDL
>Parachute cosi). Proc na fb nefunguje je otazka do libsdl mailing listu,
>pripadne use the source, atd. :-)
>
>Petr
>
>  
>

Díky za odpovědi. V aplikaci potřebuji uklidit po sobě další věci kromě 
SDL. SDL Parachute je funkce volaná několika signály, mezi nimi SIGSEGV. 
Dělá jen to, že nastaví daný signál na DFL a uklidí po sobě SDL_Quit.
Vyřešil jsem to tak, že po inicializaci SDL (kde si SDL nastaví handler) 
si SEGV přesměruji na sebe. Můj handler nastaví SEGV na DFL, uklidí po 
sobě své věci a zavolá SDL_Quit.
La'd"a



Další informace o konferenci Linux