X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=lib%2Fdatabase.cc;fp=lib%2Fdatabase.cc;h=9743c1ca5b07ad80e0928a2092bece038337d775;hp=248d1dc27a89dad5c8759e02e4c9758d3f941e3c;hb=b30a59157d5ba0421c01fa3dc05d238d18738839;hpb=74c3cc03c219f1046d2672ef686c91b3a7f8b806 diff --git a/lib/database.cc b/lib/database.cc index 248d1dc2..9743c1ca 100644 --- a/lib/database.cc +++ b/lib/database.cc @@ -610,11 +610,12 @@ notmuch_database_compact_db (notmuch_database_t *notmuch, void *closure) { void *local; - char *notmuch_path, *xapian_path, *compact_xapian_path; + const char *xapian_path, *compact_xapian_path; const char *path; notmuch_status_t ret = NOTMUCH_STATUS_SUCCESS; struct stat statbuf; bool keep_backup; + char *message; ret = _notmuch_database_ensure_writable (notmuch); if (ret) @@ -628,15 +629,9 @@ notmuch_database_compact_db (notmuch_database_t *notmuch, if (! local) return NOTMUCH_STATUS_OUT_OF_MEMORY; - if (! (notmuch_path = talloc_asprintf (local, "%s/%s", path, ".notmuch"))) { - ret = NOTMUCH_STATUS_OUT_OF_MEMORY; - goto DONE; - } - - if (! (xapian_path = talloc_asprintf (local, "%s/%s", notmuch_path, "xapian"))) { - ret = NOTMUCH_STATUS_OUT_OF_MEMORY; + ret = _notmuch_choose_xapian_path (local, path, &xapian_path, &message); + if (ret) goto DONE; - } if (! (compact_xapian_path = talloc_asprintf (local, "%s.compact", xapian_path))) { ret = NOTMUCH_STATUS_OUT_OF_MEMORY;