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

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


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

            Bug ID: 766525
           Summary: framepositionner: add a weak ref on track element to
                    know when it is finalized
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Linux
            Status: NEW
          Severity: minor
          Priority: Normal
         Component: gst-editing-services
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: aurelien.zanelli at parrot.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

Currently, framepositionner store a pointer to the GstTrackElement given in
ges_frame_positioner_set_source_and_filter() and install a signal handler to be
notified fo GstTrackElement property change which is disconnected on finalize.
But we don't own any ref on GstTrackElement so when framepositionner instance
is finalized, GstTrackElement could be already freed leading in the best case,
the deconnection to raise a critical message.

That's happens when applying patch from bug 766449. When the timeline is
finalized and ressources cleanup, the GstTrackElement is freed before the
GstFramePositionner.

This can be tested with the following code snippet:

GESTimeline *timeline = ges_timeline_new_audio_video ();
GESLayer *layer = ges_timeline_append_layer (timeline);
GESClip *clip = ges_test_clip_new ();
ges_layer_add_clip (layer, clip);
gst_object_unref (timeline);

-- 
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