aboutsummaryrefslogtreecommitdiffhomepage
path: root/notmuch-compact.c
diff options
context:
space:
mode:
authorGravatar Jani Nikula <jani@nikula.org>2013-11-03 14:24:49 +0200
committerGravatar David Bremner <david@tethera.net>2013-11-07 06:58:58 -0400
commit54e7f1777d0b623e0995c9d5e88ab9b412e470bb (patch)
tree92c96d5ae2a32ccdcd74f54701e13d88bd998015 /notmuch-compact.c
parentd34be29a41bbe1d5bd2c81d7d791cd67ac4eb649 (diff)
cli: add compact --backup=DIRECTORY option, don't backup by default
It's the user's decision. The recommended way is to do a database dump anyway. Clean up the relevant printfs too.
Diffstat (limited to 'notmuch-compact.c')
-rw-r--r--notmuch-compact.c27
1 files changed, 13 insertions, 14 deletions
diff --git a/notmuch-compact.c b/notmuch-compact.c
index b9461c2f..359acfcc 100644
--- a/notmuch-compact.c
+++ b/notmuch-compact.c
@@ -27,16 +27,19 @@ status_update_cb (const char *msg, unused (void *closure))
}
int
-notmuch_compact_command (notmuch_config_t *config,
- unused (int argc),
- unused (char *argv[]))
+notmuch_compact_command (notmuch_config_t *config, int argc, char *argv[])
{
const char *path = notmuch_config_get_database_path (config);
- const char *backup_path;
+ const char *backup_path = NULL;
notmuch_status_t ret;
+ int opt_index;
- backup_path = talloc_asprintf (config, "%s/xapian.old", path);
- if (! backup_path)
+ notmuch_opt_desc_t options[] = {
+ { NOTMUCH_OPT_STRING, &backup_path, "backup", 0, 0 },
+ };
+
+ opt_index = parse_arguments (argc, argv, options, 1);
+ if (opt_index < 0)
return 1;
printf ("Compacting database...\n");
@@ -46,14 +49,10 @@ notmuch_compact_command (notmuch_config_t *config,
return 1;
}
- printf ("\n");
- printf ("\n");
- printf ("The old database has been moved to %s", backup_path);
- printf ("\n");
- printf ("To delete run,\n");
- printf ("\n");
- printf (" rm -R %s\n", backup_path);
- printf ("\n");
+ if (backup_path)
+ printf ("The old database has been moved to %s.\n", backup_path);
+
+ printf ("Done.\n");
return 0;
}