]> git.sesse.net Git - vlc/blobdiff - modules/access/dshow/dshow.cpp
Add missing CoUninitialize.
[vlc] / modules / access / dshow / dshow.cpp
index 96242f5dac35a77e9db7d395457ab96da89ff2eb..2bde6b7580d16e80c0c6455ae0628b2df64a595a 100644 (file)
@@ -2016,6 +2016,7 @@ static int ConfigDevicesCallback( vlc_object_t *p_this, char const *psz_name,
     if( !p_item )
     {
         free( psz_device );
+        CoUninitialize();
         return VLC_SUCCESS;
     }
 
@@ -2034,7 +2035,11 @@ static int ConfigDevicesCallback( vlc_object_t *p_this, char const *psz_name,
 
         /* Enumerate devices */
         FindCaptureDevice( p_this, NULL, &list_devices, b_audio );
-        if( !list_devices.size() ) return VLC_EGENERIC;
+        if( !list_devices.size() )
+        {
+            CoUninitialize();
+            return VLC_EGENERIC;
+        }
         devicename = *list_devices.begin();
     }