#include "notmuch-client.h"
-void status_update_cb (const char *msg);
-
-void
-status_update_cb (const char *msg)
+static void
+status_update_cb (const char *msg, unused (void *closure))
{
printf("%s\n", msg);
}
unused (char *argv[]))
{
const char *path = notmuch_config_get_database_path (config);
- const char *backup_path = path;
+ const char *backup_path;
notmuch_status_t ret;
+ backup_path = talloc_asprintf (config, "%s/xapian.old", path);
+ if (! backup_path)
+ return 1;
+
printf ("Compacting database...\n");
- ret = notmuch_database_compact (path, backup_path, status_update_cb);
+ ret = notmuch_database_compact (path, backup_path, status_update_cb, NULL);
if (ret) {
fprintf (stderr, "Compaction failed: %s\n", notmuch_status_to_string(ret));
} else {
printf ("\n");
printf ("\n");
- printf ("The old database has been moved to %s/xapian.old", backup_path);
+ printf ("The old database has been moved to %s", backup_path);
printf ("\n");
printf ("To delete run,\n");
printf ("\n");
- printf (" rm -R %s/xapian.old\n", backup_path);
+ printf (" rm -R %s\n", backup_path);
printf ("\n");
}