mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-18 07:47:17 +00:00
uri-asset: Ensure that the discoverer stops on deinit.
Discoverer maintain a referernce on the discoverer object while the async timeout callback is alive to prevent a potential crash if the object is freed while the callback is pending. But if g_main_context is released before calling the timeout callback, the discoverer pointer which was weak referenced from GESUriClipAssetClass will not be disposed because the discoverer object is not finalized.
This commit is contained in:
parent
6b40569e7e
commit
05d919a2eb
1 changed files with 2 additions and 0 deletions
|
@ -773,6 +773,8 @@ ges_uri_source_asset_get_filesource_asset (GESUriSourceAsset * asset)
|
|||
void
|
||||
_ges_uri_asset_cleanup (void)
|
||||
{
|
||||
if (discoverer)
|
||||
gst_discoverer_stop (discoverer);
|
||||
g_clear_object (&discoverer);
|
||||
if (parent_newparent_table) {
|
||||
g_hash_table_destroy (parent_newparent_table);
|
||||
|
|
Loading…
Reference in a new issue