]> git.cworth.org Git - notmuch/blobdiff - notmuch-config.c
cli/config: don't try to open config file for 'notmuch help'
[notmuch] / notmuch-config.c
index 6d50be4c31504b3660c46b42e58ca20e3bc08668..959410cce7b81b95a29969b67f41840610dc9f12 100644 (file)
@@ -322,7 +322,7 @@ out:
 notmuch_config_t *
 notmuch_config_open (void *ctx,
                     const char *filename,
-                    notmuch_bool_t create_new)
+                    notmuch_config_mode_t config_mode)
 {
     GError *error = NULL;
     size_t tmp;
@@ -356,9 +356,13 @@ notmuch_config_open (void *ctx,
 
     config->key_file = g_key_file_new ();
 
-    if (! get_config_from_file (config, create_new)) {
-       talloc_free (config);
-       return NULL;
+    if (config_mode & NOTMUCH_CONFIG_OPEN) {
+       notmuch_bool_t create_new = (config_mode & NOTMUCH_CONFIG_CREATE) != 0;
+
+       if (! get_config_from_file (config, create_new)) {
+           talloc_free (config);
+           return NULL;
+       }
     }
 
     /* Whenever we know of configuration sections that don't appear in
@@ -631,11 +635,11 @@ _config_get_list (notmuch_config_t *config,
 
 static void
 _config_set_list (notmuch_config_t *config,
-                 const char *group, const char *name,
+                 const char *group, const char *key,
                  const char *list[],
                  size_t length, const char ***config_var )
 {
-    g_key_file_set_string_list (config->key_file, group, name, list, length);
+    g_key_file_set_string_list (config->key_file, group, key, list, length);
 
     /* drop the cached value */
     talloc_free (*config_var);