gst/playback/gstplaybin.c: Remove visualization from parent explicitely; works around some apparent refcount issue th...

Original commit message from CVS:
* gst/playback/gstplaybin.c: (remove_sinks):
Remove visualization from parent explicitely; works around some
apparent refcount issue that I haven't tracked down yet.
This commit is contained in:
Ronald S. Bultje 2005-08-08 12:16:54 +00:00
parent be08afaabf
commit c3c1f232c0
2 changed files with 13 additions and 0 deletions

View file

@ -1,3 +1,9 @@
2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* gst/playback/gstplaybin.c: (remove_sinks):
Remove visualization from parent explicitely; works around some
apparent refcount issue that I haven't tracked down yet.
2005-08-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* ext/alsa/gstalsasink.c: (set_hwparams):

View file

@ -695,6 +695,13 @@ remove_sinks (GstPlayBin * play_bin)
g_list_free (play_bin->sinks);
play_bin->sinks = NULL;
/* FIXME: this is probably some refcounting problem */
if (play_bin->visualisation && GST_OBJECT_PARENT (play_bin->visualisation)) {
gst_bin_remove (GST_BIN (GST_OBJECT_PARENT (play_bin->visualisation)),
play_bin->visualisation);
gst_element_set_state (play_bin->visualisation, GST_STATE_NULL);
}
if (play_bin->frame) {
gst_buffer_unref (play_bin->frame);
play_bin->frame = NULL;