Commit c1d55f29 authored by Guillaume Desmottes's avatar Guillaume Desmottes Committed by Tim-Philipp Müller
Browse files

playbin3: fix leaks of collection returned by message parse API

gst_message_parse_stream_collection() and
gst_message_parse_streams_selected() actually return a reffed
GstStreamCollection.

https://bugzilla.gnome.org/show_bug.cgi?id=768776
parent 657a9c23
......@@ -1182,6 +1182,8 @@ gst_decodebin3_handle_message (GstBin * bin, GstMessage * message)
gst_message_unref (message);
message = new_msg;
}
if (collection)
gst_object_unref (collection);
break;
}
default:
......
......@@ -3102,6 +3102,7 @@ gst_play_bin3_handle_message (GstBin * bin, GstMessage * msg)
GST_PLAY_BIN3_UNLOCK (playbin);
notify_all_streams (playbin, collection);
gst_object_unref (collection);
}
} else if (GST_MESSAGE_TYPE (msg) == GST_MESSAGE_STREAMS_SELECTED) {
GstStreamCollection *collection = NULL;
......@@ -3138,6 +3139,7 @@ gst_play_bin3_handle_message (GstBin * bin, GstMessage * msg)
GST_PLAY_BIN3_UNLOCK (playbin);
notify_all_streams (playbin, collection);
gst_object_unref (collection);
}
}
......
......@@ -223,6 +223,7 @@ _on_bus_message (GstBus * bus, GstMessage * message, MyDataStruct * data)
/* In 5s try to change streams */
data->timeout_id =
g_timeout_add_seconds (5, (GSourceFunc) switch_streams, data);
gst_object_unref (collection);
}
break;
}
......
......@@ -217,6 +217,7 @@ _on_bus_message (GstBus * bus, GstMessage * message, MyDataStruct * data)
/* In 5s try to change streams */
data->timeout_id =
g_timeout_add_seconds (5, (GSourceFunc) switch_streams, data);
gst_object_unref (collection);
}
break;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment