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
notmuch_status_t ret = NOTMUCH_STATUS_SUCCESS;
- query = notmuch_query_create (notmuch, query_string);
- if (query == NULL) {
- fprintf (stderr, "Out of memory.\n");
+ status = notmuch_query_create_with_syntax (notmuch, query_string,
+ shared_option_query_syntax (),
+ &query);
+ if (print_status_database ("notmuch reindex", notmuch, status))
return 1;
- }
/* reindexing is not interested in any special sort order */
notmuch_query_set_sort (query, NOTMUCH_SORT_UNSORTED);
notmuch_messages_move_to_next (messages)) {
message = notmuch_messages_get (messages);
- ret = notmuch_message_reindex(message, indexopts);
+ ret = notmuch_message_reindex (message, indexopts);
if (ret != NOTMUCH_STATUS_SUCCESS)
break;
+ notmuch_message_destroy (message);
}
- if (!ret)
+ if (! ret)
ret = notmuch_database_end_atomic (notmuch);
notmuch_query_destroy (query);
}
int
-notmuch_reindex_command (notmuch_config_t *config, int argc, char *argv[])
+notmuch_reindex_command (notmuch_database_t *notmuch, int argc, char *argv[])
{
char *query_string = NULL;
- notmuch_database_t *notmuch;
struct sigaction action;
int opt_index;
int ret;
notmuch_status_t status;
+ notmuch_indexopts_t *indexopts = notmuch_database_get_default_indexopts (notmuch);
/* Set up our handler for SIGINT */
memset (&action, 0, sizeof (struct sigaction));
if (opt_index < 0)
return EXIT_FAILURE;
- notmuch_process_shared_options (argv[0]);
-
- if (notmuch_database_open (notmuch_config_get_database_path (config),
- NOTMUCH_DATABASE_MODE_READ_WRITE, ¬much))
- return EXIT_FAILURE;
+ notmuch_process_shared_options (notmuch, argv[0]);
- notmuch_exit_if_unmatched_db_uuid (notmuch);
-
- status = notmuch_process_shared_indexing_options (notmuch, config);
+ status = notmuch_process_shared_indexing_options (indexopts);
if (status != NOTMUCH_STATUS_SUCCESS) {
fprintf (stderr, "Error: Failed to process index options. (%s)\n",
notmuch_status_to_string (status));
return EXIT_FAILURE;
}
- query_string = query_string_from_args (config, argc-opt_index, argv+opt_index);
+ query_string = query_string_from_args (notmuch, argc - opt_index, argv + opt_index);
if (query_string == NULL) {
fprintf (stderr, "Out of memory\n");
return EXIT_FAILURE;
fprintf (stderr, "Error: notmuch reindex requires at least one search term.\n");
return EXIT_FAILURE;
}
-
- ret = reindex_query (notmuch, query_string, indexing_cli_choices.opts);
+
+ ret = reindex_query (notmuch, query_string, indexopts);
notmuch_database_destroy (notmuch);