Although currently after free_pipeline we free the entire structure the name and the function suggests that we only free the pipeline. Also this is fixing a future possible problem with the series from Vivek Kasireddy reusing the SpiceGstDecoder for another pipeline if H/W encoder pipeline creation fails. Signed-off-by: Frediano Ziglio <freddy77@xxxxxxxxx> --- src/channel-display-gst.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/channel-display-gst.c b/src/channel-display-gst.c index 3bd948d2..ffc2edbf 100644 --- a/src/channel-display-gst.c +++ b/src/channel-display-gst.c @@ -361,11 +361,14 @@ static void free_pipeline(SpiceGstDecoder *decoder) gst_element_set_state(decoder->pipeline, GST_STATE_NULL); gst_object_unref(decoder->appsrc); + decoder->appsrc = NULL; if (decoder->appsink) { gst_object_unref(decoder->appsink); + decoder->appsink = NULL; } - gst_object_unref(decoder->pipeline); gst_object_unref(decoder->clock); + decoder->clock = NULL; + gst_object_unref(decoder->pipeline); decoder->pipeline = NULL; } -- 2.41.0