X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch-insert.c;h=72e2e35fc4a828d209186b70f5aaf4d51d912f54;hp=e483b94905ff653f2e2602283903676bc12d7e91;hb=f25e48e0234a050cab38306a066605a0f8bd3d12;hpb=f994f0e7df178eb31c656329bb28ffa832ac4364 diff --git a/notmuch-insert.c b/notmuch-insert.c index e483b949..72e2e35f 100644 --- a/notmuch-insert.c +++ b/notmuch-insert.c @@ -34,7 +34,7 @@ static volatile sig_atomic_t interrupted; static void handle_sigint (unused (int sig)) { - static char msg[] = "Stopping... \n"; + static const char msg[] = "Stopping... \n"; /* This write is "opportunistic", so it's okay to ignore the * result. It is not required for correctness, and if it does @@ -444,11 +444,11 @@ add_file (notmuch_database_t *notmuch, const char *path, tag_op_list_t *tag_ops, } int -notmuch_insert_command (unused(notmuch_config_t *config),notmuch_database_t *notmuch, int argc, char *argv[]) +notmuch_insert_command (notmuch_database_t *notmuch, int argc, char *argv[]) { notmuch_status_t status, close_status; struct sigaction action; - const char *db_path; + const char *mail_root; notmuch_config_values_t *new_tags = NULL; tag_op_list_t *tag_ops; char *query_string = NULL; @@ -478,16 +478,9 @@ notmuch_insert_command (unused(notmuch_config_t *config),notmuch_database_t *not if (opt_index < 0) return EXIT_FAILURE; - notmuch_process_shared_options (argv[0]); + notmuch_process_shared_options (notmuch, argv[0]); - - /* XXX TODO replace this use of DATABASE_PATH with something specific to hooks */ - db_path = notmuch_config_get (notmuch, NOTMUCH_CONFIG_DATABASE_PATH); - - if (! db_path) - INTERNAL_ERROR ("Unable to retrieve database path"); - else - db_path = talloc_strdup (local, db_path); + mail_root = notmuch_config_get (notmuch, NOTMUCH_CONFIG_MAIL_ROOT); new_tags = notmuch_config_get_values (notmuch, NOTMUCH_CONFIG_NEW_TAGS); @@ -533,7 +526,7 @@ notmuch_insert_command (unused(notmuch_config_t *config),notmuch_database_t *not return EXIT_FAILURE; } - maildir = talloc_asprintf (local, "%s/%s", db_path, folder); + maildir = talloc_asprintf (local, "%s/%s", mail_root, folder); if (! maildir) { fprintf (stderr, "Out of memory\n"); return EXIT_FAILURE; @@ -557,8 +550,6 @@ notmuch_insert_command (unused(notmuch_config_t *config),notmuch_database_t *not return EXIT_FAILURE; } - notmuch_exit_if_unmatched_db_uuid (notmuch); - status = notmuch_process_shared_indexing_options (notmuch); if (status != NOTMUCH_STATUS_SUCCESS) { fprintf (stderr, "Error: Failed to process index options. (%s)\n", @@ -570,7 +561,7 @@ notmuch_insert_command (unused(notmuch_config_t *config),notmuch_database_t *not status = add_file (notmuch, newpath, tag_ops, synchronize_flags, keep, indexing_cli_choices.opts); /* Commit changes. */ - close_status = notmuch_database_destroy (notmuch); + close_status = notmuch_database_close (notmuch); if (close_status) { /* Hold on to the first error, if any. */ if (! status) @@ -595,9 +586,11 @@ notmuch_insert_command (unused(notmuch_config_t *config),notmuch_database_t *not if (hooks && status == NOTMUCH_STATUS_SUCCESS) { /* Ignore hook failures. */ - notmuch_run_hook (db_path, "post-insert"); + notmuch_run_hook (notmuch, "post-insert"); } + notmuch_database_destroy (notmuch); + talloc_free (local); return status_to_exit (status);