streamsynchronizer: avoid pad destruction races.
authorCharlie Turner <cturner@igalia.com>
Fri, 20 Sep 2019 08:48:30 +0000 (09:48 +0100)
committerSebastian Dröge <slomo@coaxion.net>
Tue, 24 Sep 2019 20:09:09 +0000 (20:09 +0000)
commit96c6f581ae5764a77d8c6a71afc1bf9b7c9e1301
tree656770f7697c832e4bf91651287937490ac27828
parent6f7c9e43bc13102ff7fc73bd359c750a227f6588
streamsynchronizer: avoid pad destruction races.

Due to the use of {set/get}-element_private methods being used to store
the GstSyncStream in the src and sink pads, and the racey nature of pad
destruction, there are numerous ways we can be bitten by race conditions
in the stream synchronizer. Fix that by tying the pads toghether with
references.
gst/playback/gststreamsynchronizer.c