]> git.sesse.net Git - vlc/blobdiff - src/modules/modules.c
module_need: handle module loading error
[vlc] / src / modules / modules.c
index 972d23effaa2ec0d566a0599b7a40797cd55dc71..cadfd6235c39f57fb1830f795a34f5eec6c84c27 100644 (file)
@@ -560,11 +560,14 @@ found_shortcut:
         {
             module_t *p_new_module =
                 AllocatePlugin( p_this, p_real->psz_filename );
-            if( p_new_module )
-            {
-                CacheMerge( p_this, p_real, p_new_module );
-                DeleteModule( p_module_bank, p_new_module );
+            if( p_new_module == NULL )
+            {   /* Corrupted module */
+                msg_Err( p_this, "possibly corrupt module cache" );
+                module_release( p_cand );
+                continue;
             }
+            CacheMerge( p_this, p_real, p_new_module );
+            DeleteModule( p_module_bank, p_new_module );
         }
 #endif