From 9b9e39be248389370e80b429da5a528418733483 Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Wed, 14 Aug 2019 11:21:30 -0400 Subject: [PATCH] amc: Fix crash when a sync_meta survives its sink _amc_gl_free() could be called after the GstAmcVideoDec has been finalized, in the case downstream still has a ref to a buffer. --- sys/androidmedia/gstamcvideodec.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/androidmedia/gstamcvideodec.c b/sys/androidmedia/gstamcvideodec.c index 1681650..6ca6dd2 100644 --- a/sys/androidmedia/gstamcvideodec.c +++ b/sys/androidmedia/gstamcvideodec.c @@ -153,6 +153,7 @@ _gl_sync_unref (struct gl_sync *sync) _gl_sync_result_unref (sync->result); + g_object_unref (sync->sink); g_object_unref (sync->surface); gst_memory_unref ((GstMemory *) sync->oes_mem); @@ -1464,7 +1465,7 @@ retry: sync = g_new0 (struct gl_sync, 1); sync->refcount = 1; - sync->sink = self; + sync->sink = g_object_ref (self); sync->buffer = outbuf; sync->surface = g_object_ref (self->surface); sync->oes_mem = -- 2.7.4