mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-30 04:00:37 +00:00
gst/qtdemux/qtdemux.c: More memory leak fixes (#149162).
Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state), (gst_qtdemux_loop_header), (gst_qtdemux_handle_esds): More memory leak fixes (#149162).
This commit is contained in:
parent
28215a31c1
commit
20a14f8b13
2 changed files with 21 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
2005-01-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
||||
|
||||
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
|
||||
(gst_qtdemux_loop_header), (gst_qtdemux_handle_esds):
|
||||
More memory leak fixes (#149162).
|
||||
|
||||
2005-01-18 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
||||
|
||||
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
|
||||
|
|
|
@ -524,7 +524,9 @@ gst_qtdemux_change_state (GstElement * element)
|
|||
break;
|
||||
case GST_STATE_PLAYING_TO_PAUSED:
|
||||
break;
|
||||
case GST_STATE_PAUSED_TO_READY:
|
||||
case GST_STATE_PAUSED_TO_READY:{
|
||||
gint n;
|
||||
|
||||
qtdemux->last_ts = GST_CLOCK_TIME_NONE;
|
||||
qtdemux->need_discont = FALSE;
|
||||
qtdemux->need_flush = FALSE;
|
||||
|
@ -533,7 +535,15 @@ gst_qtdemux_change_state (GstElement * element)
|
|||
gst_tag_list_free (qtdemux->tag_list);
|
||||
qtdemux->tag_list = NULL;
|
||||
}
|
||||
for (n = 0; n < qtdemux->n_streams; n++) {
|
||||
gst_element_remove_pad (element, qtdemux->streams[n]->pad);
|
||||
g_free (qtdemux->streams[n]->samples);
|
||||
gst_caps_free (qtdemux->streams[n]->caps);
|
||||
g_free (qtdemux->streams[n]);
|
||||
}
|
||||
qtdemux->n_streams = 0;
|
||||
break;
|
||||
}
|
||||
case GST_STATE_READY_TO_NULL:
|
||||
break;
|
||||
default:
|
||||
|
@ -628,6 +638,9 @@ gst_qtdemux_loop_header (GstElement * element)
|
|||
qtdemux_node_dump (qtdemux, qtdemux->moov_node);
|
||||
}
|
||||
qtdemux_parse_tree (qtdemux);
|
||||
g_node_destroy (qtdemux->moov_node);
|
||||
gst_buffer_unref (moov);
|
||||
qtdemux->moov_node = NULL;
|
||||
qtdemux->state = QTDEMUX_STATE_MOVIE;
|
||||
break;
|
||||
}
|
||||
|
@ -2547,6 +2560,7 @@ gst_qtdemux_handle_esds (GstQTDemux * qtdemux, QtDemuxStream * stream,
|
|||
|
||||
gst_caps_set_simple (stream->caps, "codec_data", GST_TYPE_BUFFER,
|
||||
buffer, NULL);
|
||||
gst_buffer_unref (buffer);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue