[Bug 766525] framepositionner: add a weak ref on track element to know when it is finalized

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon May 16 18:22:13 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=766525

--- Comment #3 from Aurélien Zanelli <aurelien.zanelli at parrot.com> ---
(In reply to Thibault Saunier from comment #1)
> Until now it was correct to concider the FramePositionner would always be
> destroyed before its parent GESTrackElement.
> 
> If that changes it is right to add a weak ref, but you should probably do so
> in the same patch as where you change that behaviour.

The patch in bug 766449 only reveals this issue by fixing element leaks
(including framepositionner), it does not change the destroy order. So I would
prefer not to merge this with the other patch.

I quickly check the current life of track element and framepositionner in the
example I give, here is my current understanding:
We create a new GESTestClip which create a new GESVideoTestSource.
GESVideoTestSource object instantiate a 'framepositionner' and set itself as
source. Then clip is added to the layer.
When timeline is disposed, we first remove layers which causes
GESVideoTestSource to be disposed. Then we remove tracks and the disposal of
the videotrack causes the last reference to the framepositionner to be dropped.

If we expect FramePositionner to be destroyed before its linked GESTrackElement
and so not live after it, it may be worth analyzing this issue further.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list