[vlc-commits] [Git][videolan/vlc][master] core: move Internal{Dialog, Keystore}Clean

Jean-Baptiste Kempf (@jbk) gitlab at videolan.org
Sun Jan 21 11:40:16 UTC 2024



Jean-Baptiste Kempf pushed to branch master at VideoLAN / VLC


Commits:
6ed0369b by Gabriel LT at 2024-01-21T11:23:58+00:00
core: move Internal{Dialog,Keystore}Clean

In some cases, when a module uses a dialog, the dialog provider is
destroyed before the module is unloaded. This can lead to a crash if
the module continues to use it after it has been released.

This is fixed by moving InternalDialogClean after the vlc_playlist_Delete
so that it remains available during the player cleanup and the input
thread cleanup.

- - - - -


1 changed file:

- src/libvlc.c


Changes:

=====================================
src/libvlc.c
=====================================
@@ -356,9 +356,6 @@ void libvlc_InternalCleanup( libvlc_int_t *p_libvlc )
     if ( priv->p_thumbnailer )
         vlc_thumbnailer_Release( priv->p_thumbnailer );
 
-    libvlc_InternalDialogClean( p_libvlc );
-    libvlc_InternalKeystoreClean( p_libvlc );
-
 #ifdef ENABLE_VLM
     /* Destroy VLM if created in libvlc_InternalInit */
     if( priv->p_vlm )
@@ -391,6 +388,8 @@ void libvlc_InternalCleanup( libvlc_int_t *p_libvlc )
     if( priv->media_source_provider )
         vlc_media_source_provider_Delete( priv->media_source_provider );
 
+    libvlc_InternalDialogClean( p_libvlc );
+    libvlc_InternalKeystoreClean( p_libvlc );
     libvlc_InternalActionsClean( p_libvlc );
 
     /* Save the configuration */



View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/6ed0369bd8b715e1d248eb59bbfbe14dcfbf5f67

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/6ed0369bd8b715e1d248eb59bbfbe14dcfbf5f67
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list