summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Courtier-Dutton <jcdutton@users.sourceforge.net>2001-12-09 18:36:48 +0000
committerJames Courtier-Dutton <jcdutton@users.sourceforge.net>2001-12-09 18:36:48 +0000
commit6f49c2a444293fa406970f91e4bc897245fde7cc (patch)
tree3a519cb28abdd6d2ad46521ebe3107c4be76b887
parentbced9334f9c54d0c6ca34ef5a2640b471352460c (diff)
downloadxine-lib-6f49c2a444293fa406970f91e4bc897245fde7cc.tar.gz
xine-lib-6f49c2a444293fa406970f91e4bc897245fde7cc.tar.bz2
Fix segfault if button event is sent before an SPU is present.
CVS patchset: 1197 CVS date: 2001/12/09 18:36:48
-rw-r--r--src/xine-engine/video_overlay.c11
1 files changed, 10 insertions, 1 deletions
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;