]> git.notmuchmail.org Git - notmuch/blobdiff - notmuch-compact.c
emacs: Add new option notmuch-search-hide-excluded
[notmuch] / notmuch-compact.c
index 8b820c0d12389eea75198aa70d65dbd3efc8be49..40ffb4286b5f7db086a89720a657b89176a2aea0 100644 (file)
@@ -13,7 +13,7 @@
  * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see http://www.gnu.org/licenses/ .
+ * along with this program.  If not, see https://www.gnu.org/licenses/ .
  *
  * Author: Ben Gamari <bgamari.foss@gmail.com>
  */
@@ -27,30 +27,33 @@ status_update_cb (const char *msg, unused (void *closure))
 }
 
 int
-notmuch_compact_command (notmuch_config_t *config, int argc, char *argv[])
+notmuch_compact_command (notmuch_database_t *notmuch, int argc, char *argv[])
 {
-    const char *path = notmuch_config_get_database_path (config);
     const char *backup_path = NULL;
     notmuch_status_t ret;
-    notmuch_bool_t quiet;
+    bool quiet = false;
     int opt_index;
 
     notmuch_opt_desc_t options[] = {
-       { NOTMUCH_OPT_STRING, &backup_path, "backup", 0, 0 },
-       { NOTMUCH_OPT_BOOLEAN,  &quiet, "quiet", 'q', 0 },
+       { .opt_string = &backup_path, .name = "backup" },
+       { .opt_bool =  &quiet, .name = "quiet" },
+       { .opt_inherit = notmuch_shared_options },
+       { }
     };
 
     opt_index = parse_arguments (argc, argv, options, 1);
     if (opt_index < 0)
-       return 1;
+       return EXIT_FAILURE;
+
+    notmuch_process_shared_options (NULL, argv[0]);
 
     if (! quiet)
        printf ("Compacting database...\n");
-    ret = notmuch_database_compact (path, backup_path,
-                                   quiet ? NULL : status_update_cb, NULL);
+    ret = notmuch_database_compact_db (notmuch, backup_path,
+                                      quiet ? NULL : status_update_cb, NULL);
     if (ret) {
        fprintf (stderr, "Compaction failed: %s\n", notmuch_status_to_string (ret));
-       return 1;
+       return EXIT_FAILURE;
     }
 
     if (! quiet) {
@@ -60,5 +63,5 @@ notmuch_compact_command (notmuch_config_t *config, int argc, char *argv[])
        printf ("Done.\n");
     }
 
-    return 0;
+    return EXIT_SUCCESS;
 }