From 8991054aada61babb591a060ac18d3dbb05628db Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Thu, 21 Jan 2010 16:11:55 +0000 Subject: [PATCH] Fixed crash when there was no mouse focus for some reason (iPhone bug?) --- src/events/SDL_mouse.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/events/SDL_mouse.c b/src/events/SDL_mouse.c index 5fdfee7b6..483565334 100644 --- a/src/events/SDL_mouse.c +++ b/src/events/SDL_mouse.c @@ -373,7 +373,7 @@ SDL_SendProximity(int id, int x, int y, int type) event.proximity.cursor = mouse->current_end; event.proximity.type = type; /* FIXME: is this right? */ - event.proximity.windowID = mouse->focus->id; + event.proximity.windowID = mouse->focus ? mouse->focus->id : 0; posted = (SDL_PushEvent(&event) > 0); if (type == SDL_PROXIMITYIN) { mouse->proximity = SDL_TRUE; @@ -479,7 +479,7 @@ SDL_SendMouseMotion(int id, int relative, int x, int y, int pressure) event.motion.cursor = mouse->current_end; event.motion.xrel = xrel; event.motion.yrel = yrel; - event.motion.windowID = mouse->focus->id; + event.motion.windowID = mouse->focus ? mouse->focus->id : 0; posted = (SDL_PushEvent(&event) > 0); } mouse->last_x = mouse->x; @@ -532,7 +532,7 @@ SDL_SendMouseButton(int id, Uint8 state, Uint8 button) event.button.button = button; event.button.x = mouse->x; event.button.y = mouse->y; - event.button.windowID = mouse->focus->id; + event.button.windowID = mouse->focus ? mouse->focus->id : 0; posted = (SDL_PushEvent(&event) > 0); } return posted; @@ -556,7 +556,7 @@ SDL_SendMouseWheel(int index, int x, int y) event.wheel.which = (Uint8) index; event.wheel.x = x; event.wheel.y = y; - event.wheel.windowID = mouse->focus->id; + event.wheel.windowID = mouse->focus ? mouse->focus->id : 0; posted = (SDL_PushEvent(&event) > 0); } return posted;