diff --git a/subprojects/gst-plugins-base/tools/gst-play.c b/subprojects/gst-plugins-base/tools/gst-play.c index 0898ac1336..9c824f76bc 100644 --- a/subprojects/gst-plugins-base/tools/gst-play.c +++ b/subprojects/gst-plugins-base/tools/gst-play.c @@ -604,8 +604,9 @@ play_bus_msg (GstBus * bus, GstMessage * msg, gpointer user_data) if (collection) { g_mutex_lock (&play->selection_lock); - gst_object_replace ((GstObject **) & play->collection, - (GstObject *) collection); + if (play->collection) + gst_object_unref (play->collection); + play->collection = collection; g_mutex_unlock (&play->selection_lock); } break;