From 6f49c2a444293fa406970f91e4bc897245fde7cc Mon Sep 17 00:00:00 2001 From: James Courtier-Dutton Date: Sun, 9 Dec 2001 18:36:48 +0000 Subject: Fix segfault if button event is sent before an SPU is present. CVS patchset: 1197 CVS date: 2001/12/09 18:36:48 --- src/xine-engine/video_overlay.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/xine-engine/video_overlay.c b/src/xine-engine/video_overlay.c index f4269e832..a332c0882 100644 --- a/src/xine-engine/video_overlay.c +++ b/src/xine-engine/video_overlay.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: video_overlay.c,v 1.6 2001/12/01 23:13:12 guenter Exp $ + * $Id: video_overlay.c,v 1.7 2001/12/09 18:36:48 jcdutton Exp $ * */ @@ -456,6 +456,15 @@ static void video_overlay_event( video_overlay_t *this, int vpts ) { if( !this->video_overlay_objects[handle].overlay ) { fprintf(stderr,"video_overlay: error: button event received and no overlay allocated.\n"); + if( this->video_overlay_events[this_event].event->object.overlay->rle ) { + printf ("video_overlay: warning EVENT_MENU_BUTTON with rle data\n"); + free( this->video_overlay_events[this_event].event->object.overlay->rle ); + } + + /* The null test was done at the start of this case statement */ + free (this->video_overlay_events[this_event].event->object.overlay); + this->video_overlay_events[this_event].event->object.overlay = NULL; + break; } this->video_overlay_objects[handle].handle = handle; -- cgit v1.2.3