[PATCH 6/6] cli: add compact --verbose option and silence output without it

Jani Nikula jani at nikula.org
Fri Nov 1 07:27:15 PDT 2013


If there's nothing surprising to say, don't say anything. Unless asked
for by the user.
---
 notmuch-compact.c |   16 +++++++++++-----
 1 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/notmuch-compact.c b/notmuch-compact.c
index ecac86a..c0ae22e 100644
--- a/notmuch-compact.c
+++ b/notmuch-compact.c
@@ -32,27 +32,33 @@ notmuch_compact_command (notmuch_config_t *config, 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 verbose;
     int opt_index;
 
     notmuch_opt_desc_t options[] = {
 	{ NOTMUCH_OPT_STRING, &backup_path, "backup", 0, 0 },
+	{ NOTMUCH_OPT_BOOLEAN,  &verbose, "verbose", 'v', 0 },
     };
 
     opt_index = parse_arguments (argc, argv, options, 1);
     if (opt_index < 0)
 	return 1;
 
-    printf ("Compacting database...\n");
-    ret = notmuch_database_compact (path, backup_path, status_update_cb, NULL);
+    if (verbose)
+	printf ("Compacting database...\n");
+    ret = notmuch_database_compact (path, backup_path,
+				    verbose ? status_update_cb : NULL, NULL);
     if (ret) {
 	fprintf (stderr, "Compaction failed: %s\n", notmuch_status_to_string(ret));
 	return 1;
     }
 
-    printf ("Done.\n");
+    if (verbose) {
+	printf ("Done.\n");
 
-    if (backup_path)
-	printf ("The old database has been moved to %s.\n", backup_path);
+	if (backup_path)
+	    printf ("The old database has been moved to %s.\n", backup_path);
+    }
 
     return 0;
 }
-- 
1.7.2.5



More information about the notmuch mailing list