More checks for current GF state were added.

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%403606
This commit is contained in:
Mike Gorchak 2009-05-14 11:51:42 +00:00
parent 9c65a7a51c
commit ad8b9f8805
2 changed files with 14 additions and 1 deletions

View file

@ -262,6 +262,10 @@ int gf_showcursor(SDL_Cursor* cursor)
{
mdata=(SDL_MouseData*)cursor->mouse->driverdata;
didata=(SDL_DisplayData*)mdata->didata;
if ((didata==NULL) || (mdata==NULL))
{
return;
}
}
else
{
@ -405,6 +409,10 @@ void gf_movecursor(SDL_Cursor* cursor)
if (window_id<=0)
{
didata=(SDL_DisplayData*)cursor->mouse->driverdata;
if (didata==NULL)
{
return;
}
}
else
{

View file

@ -208,6 +208,7 @@ static void qnxgf_destroy(SDL_VideoDevice* device)
if (gfdata->gfinitialized!=SDL_FALSE)
{
gf_dev_detach(gfdata->gfdev);
gfdata->gfdev=NULL;
}
if (device->driverdata!=NULL)
@ -529,7 +530,7 @@ int qnxgf_videoinit(_THIS)
void qnxgf_videoquit(_THIS)
{
SDL_DisplayData* didata;
SDL_DisplayData* didata=NULL;
uint32_t it;
/* Stop collecting mouse events */
@ -546,10 +547,12 @@ void qnxgf_videoquit(_THIS)
if (didata->cursor.cursor.bitmap.image0!=NULL)
{
SDL_free((void*)didata->cursor.cursor.bitmap.image0);
didata->cursor.cursor.bitmap.image0=NULL;
}
if (didata->cursor.cursor.bitmap.image1!=NULL)
{
SDL_free((void*)didata->cursor.cursor.bitmap.image1);
didata->cursor.cursor.bitmap.image1=NULL;
}
/* Free main surface */
@ -581,6 +584,7 @@ void qnxgf_videoquit(_THIS)
/* Detach from layer, free it for others */
gf_layer_detach(didata->layer);
didata->layer=NULL;
/* Mark it as detached */
didata->layer_attached=SDL_FALSE;
@ -588,6 +592,7 @@ void qnxgf_videoquit(_THIS)
/* Detach from selected display */
gf_display_detach(didata->display);
didata->display=NULL;
}
}