X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=lib%2Fconfig.cc;h=6cd15fab26bc16610e1c56e1b5e0019b41279259;hb=HEAD;hp=503a0c8b585323dd59fad974b55ca47b7399fad6;hpb=df7c5acd759f22fcb537490f62b85d39aa71d677;p=notmuch diff --git a/lib/config.cc b/lib/config.cc index 503a0c8b..6cd15fab 100644 --- a/lib/config.cc +++ b/lib/config.cc @@ -416,7 +416,8 @@ _expand_path (void *ctx, const char *key, const char *val) notmuch_status_t _notmuch_config_load_from_file (notmuch_database_t *notmuch, - GKeyFile *file) + GKeyFile *file, + char **status_string) { notmuch_status_t status = NOTMUCH_STATUS_SUCCESS; gchar **groups = NULL, **keys, *val; @@ -435,6 +436,7 @@ _notmuch_config_load_from_file (notmuch_database_t *notmuch, for (gchar **keys_p = keys; *keys_p; keys_p++) { char *absolute_key = talloc_asprintf (notmuch, "%s.%s", *grp, *keys_p); char *normalized_val; + GError *gerr = NULL; /* If we opened from a given path, do not overwrite it */ if (strcmp (absolute_key, "database.path") == 0 && @@ -442,7 +444,14 @@ _notmuch_config_load_from_file (notmuch_database_t *notmuch, notmuch->xapian_db) continue; - val = g_key_file_get_string (file, *grp, *keys_p, NULL); + val = g_key_file_get_string (file, *grp, *keys_p, &gerr); + if (gerr) { + if (status_string) + IGNORE_RESULT (asprintf (status_string, + "GLib: %s\n", + gerr->message)); + g_error_free (gerr); + } if (! val) { status = NOTMUCH_STATUS_FILE_ERROR; goto DONE; @@ -599,6 +608,8 @@ _notmuch_config_key_to_string (notmuch_config_key_t key) return "database.autocommit"; case NOTMUCH_CONFIG_EXTRA_HEADERS: return "show.extra_headers"; + case NOTMUCH_CONFIG_INDEX_AS_TEXT: + return "index.as_text"; default: return NULL; } @@ -642,6 +653,7 @@ _notmuch_config_default (notmuch_database_t *notmuch, notmuch_config_key_t key) else email = _get_email_from_passwd_file (notmuch); return email; + case NOTMUCH_CONFIG_INDEX_AS_TEXT: case NOTMUCH_CONFIG_NEW_IGNORE: return ""; case NOTMUCH_CONFIG_AUTOCOMMIT: