summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/xine-engine/video_overlay.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/xine-engine/video_overlay.c b/src/xine-engine/video_overlay.c
index a51f3cd85..c710f1d14 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.19 2002/04/09 13:20:43 jcdutton Exp $
+ * $Id: video_overlay.c,v 1.20 2002/04/23 13:14:34 esnel Exp $
*
*/
@@ -597,10 +597,23 @@ static void video_overlay_dispose(video_overlay_instance_t *this_gen) {
for (i=0; i < MAX_EVENTS; i++) {
if (this->video_overlay_events[i].event != NULL) {
+ if (this->video_overlay_events[i].event->object.overlay != NULL) {
+ if (this->video_overlay_events[i].event->object.overlay->rle)
+ free (this->video_overlay_events[i].event->object.overlay->rle);
+ free (this->video_overlay_events[i].event->object.overlay);
+ }
free (this->video_overlay_events[i].event);
}
}
+ for (i=0; i < MAX_OBJECTS; i++) {
+ if (this->video_overlay_objects[i].overlay != NULL) {
+ if (this->video_overlay_objects[i].overlay->rle)
+ free (this->video_overlay_objects[i].overlay->rle);
+ free (this->video_overlay_objects[i].overlay);
+ }
+ }
+
free (this);
}