]> git.sesse.net Git - vlc/commitdiff
libvlc: Add a --ignore-config options that allow not to use the config file. This...
authorPierre d'Herbemont <pdherbemont@videolan.org>
Wed, 2 Apr 2008 21:22:03 +0000 (23:22 +0200)
committerPierre d'Herbemont <pdherbemont@videolan.org>
Wed, 2 Apr 2008 22:55:40 +0000 (00:55 +0200)
src/libvlc-common.c
src/libvlc-module.c

index 599e0e7bd14555f487e9b75f2b89bf669ae115d0..c951a38290969401f6ad1474fc80b160a9b2dfdd 100644 (file)
@@ -394,7 +394,9 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc,
 # if defined (WIN32) || defined (__APPLE__)
     /* This ain't really nice to have to reload the config here but it seems
      * the only way to do it. */
-    config_LoadConfigFile( p_libvlc, "main" );
+
+    if( !config_GetInt( p_libvlc, "ignore-config" ) )
+        config_LoadConfigFile( p_libvlc, "main" );
     config_LoadCmdLine( p_libvlc, &i_argc, ppsz_argv, VLC_TRUE );
 
     /* Check if the user specified a custom language */
@@ -411,7 +413,8 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc,
 
         module_EndBank( p_libvlc );
         module_InitBank( p_libvlc );
-        config_LoadConfigFile( p_libvlc, "main" );
+        if( !config_GetInt( p_libvlc, "ignore-config" ) )
+            config_LoadConfigFile( p_libvlc, "main" );
         config_LoadCmdLine( p_libvlc, &i_argc, ppsz_argv, VLC_TRUE );
         p_libvlc_global->p_module_bank->b_cache_delete = b_cache_delete;
     }
@@ -465,17 +468,20 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc,
     }
 
     /* Check for config file options */
-    if( config_GetInt( p_libvlc, "reset-config" ) > 0 )
+    if( !config_GetInt( p_libvlc, "ignore-config" ) )
     {
-        config_ResetAll( p_libvlc );
-        config_LoadCmdLine( p_libvlc, &i_argc, ppsz_argv, VLC_TRUE );
-        config_SaveConfigFile( p_libvlc, NULL );
-    }
-    if( config_GetInt( p_libvlc, "save-config" ) > 0 )
-    {
-        config_LoadConfigFile( p_libvlc, NULL );
-        config_LoadCmdLine( p_libvlc, &i_argc, ppsz_argv, VLC_TRUE );
-        config_SaveConfigFile( p_libvlc, NULL );
+        if( config_GetInt( p_libvlc, "reset-config" ) > 0 )
+        {
+            config_ResetAll( p_libvlc );
+            config_LoadCmdLine( p_libvlc, &i_argc, ppsz_argv, VLC_TRUE );
+            config_SaveConfigFile( p_libvlc, NULL );
+        }
+        if( config_GetInt( p_libvlc, "save-config" ) > 0 )
+        {
+            config_LoadConfigFile( p_libvlc, NULL );
+            config_LoadCmdLine( p_libvlc, &i_argc, ppsz_argv, VLC_TRUE );
+            config_SaveConfigFile( p_libvlc, NULL );
+        }
     }
 
     if( b_exit )
@@ -492,7 +498,8 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc,
     /*
      * Override default configuration with config file settings
      */
-    config_LoadConfigFile( p_libvlc, NULL );
+    if( !config_GetInt( p_libvlc, "ignore-config" ) )
+        config_LoadConfigFile( p_libvlc, NULL );
 
     /*
      * Override configuration with command line settings
index 755b517aa476634cc3f2936c1552374465eed78e..43ba2b82d9b3e250bedd4bba506f96bc21436733 100644 (file)
@@ -2446,6 +2446,8 @@ vlc_module_begin();
 #define MODULE_TEXT \
     N_("print help on a specific module (can be combined with --advanced " \
        "and --help-verbose)")
+#define IGNORE_CONFIG_TEXT \
+    N_("no configuration option will be loaded nor saved to config file")
 #define SAVE_CONFIG_TEXT \
     N_("save the current command line options in the config")
 #define RESET_CONFIG_TEXT \
@@ -2482,6 +2484,9 @@ vlc_module_begin();
         change_short( 'p' );
         change_internal();
         change_unsaveable();
+    add_bool( "ignore-config", VLC_FALSE, NULL, IGNORE_CONFIG_TEXT, "", VLC_FALSE );
+        change_internal();
+        change_unsaveable();
     add_bool( "save-config", VLC_FALSE, NULL, SAVE_CONFIG_TEXT, "",
               VLC_FALSE );
         change_internal();