summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEduard Hasenleithner <ehasenle@users.sourceforge.net>2001-08-05 08:24:56 +0000
committerEduard Hasenleithner <ehasenle@users.sourceforge.net>2001-08-05 08:24:56 +0000
commit8145ab8e836b12a0d4f7c73c2a4911ca88002f30 (patch)
treedbe9a3e6b4eb4fc01c9efa290c7f91bfa784d43a
parent6765a1f8c70ab83b4aedae8b8cf381fb7507c408 (diff)
downloadxine-lib-8145ab8e836b12a0d4f7c73c2a4911ca88002f30.tar.gz
xine-lib-8145ab8e836b12a0d4f7c73c2a4911ca88002f30.tar.bz2
The CLUT has been used after it was freed. Fixed.
CVS patchset: 386 CVS date: 2001/08/05 08:24:56
-rw-r--r--src/libspudec/xine_decoder.c6
-rw-r--r--src/xine-engine/video_out.c3
2 files changed, 6 insertions, 3 deletions
diff --git a/src/libspudec/xine_decoder.c b/src/libspudec/xine_decoder.c
index dc87e77cb..406c0cc9d 100644
--- a/src/libspudec/xine_decoder.c
+++ b/src/libspudec/xine_decoder.c
@@ -19,7 +19,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: xine_decoder.c,v 1.6 2001/08/05 00:59:51 ehasenle Exp $
+ * $Id: xine_decoder.c,v 1.7 2001/08/05 08:24:56 ehasenle Exp $
*
* stuff needed to turn libspu into a xine decoder plugin
*/
@@ -162,8 +162,10 @@ void spudec_decode_data (spu_decoder_t *this_gen, buf_element_t *buf) {
void spudec_close (spu_decoder_t *this_gen) {
spudec_decoder_t *this = (spudec_decoder_t *) this_gen;
- if (this->clut)
+ if (this->clut) {
free(this->clut);
+ this->clut = 0;
+ }
/* FIXME not implemented */
// if (this->output_open)
diff --git a/src/xine-engine/video_out.c b/src/xine-engine/video_out.c
index f9ebefe15..1a01d8cc6 100644
--- a/src/xine-engine/video_out.c
+++ b/src/xine-engine/video_out.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_out.c,v 1.37 2001/07/25 23:26:14 richwareham Exp $
+ * $Id: video_out.c,v 1.38 2001/08/05 08:24:56 ehasenle Exp $
*
*/
@@ -370,6 +370,7 @@ static void vo_open (vo_instance_t *this) {
overlay=this->first_overlay;
while (overlay) {
overlay->state=OVERLAY_FREE;
+ overlay->clut_tbl=NULL;
overlay=overlay->next;
}
}