summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorDavid Bremner <david@tethera.net>2021-03-14 11:01:57 -0300
committerDavid Bremner <david@tethera.net>2021-03-18 08:03:36 -0300
commit1121299905e2b2684d7cc56ec35c26c3a012783e (patch)
treeae0b17de61de2731d80a93f47fd472bd5113a4a9 /lib
parent9a5406cc94f26dfa4839bacaae80b94d4ad6739e (diff)
lib: publish API for notmuch_database_reopen
Include the (currently unused) mode argument which will specify which mode to re-open the database in. Functionality and docs to be finalized in a followup commit.
Diffstat (limited to 'lib')
-rw-r--r--lib/database.cc3
-rw-r--r--lib/message.cc3
-rw-r--r--lib/notmuch-private.h3
-rw-r--r--lib/notmuch.h7
4 files changed, 11 insertions, 5 deletions
diff --git a/lib/database.cc b/lib/database.cc
index f27616da..82ac5f20 100644
--- a/lib/database.cc
+++ b/lib/database.cc
@@ -518,7 +518,8 @@ notmuch_database_close (notmuch_database_t *notmuch)
}
notmuch_status_t
-_notmuch_database_reopen (notmuch_database_t *notmuch)
+notmuch_database_reopen (notmuch_database_t *notmuch,
+ unused(notmuch_database_mode_t mode))
{
if (_notmuch_database_mode (notmuch) != NOTMUCH_DATABASE_MODE_READ_ONLY)
return NOTMUCH_STATUS_UNSUPPORTED_OPERATION;
diff --git a/lib/message.cc b/lib/message.cc
index dc4b47dc..73a7805f 100644
--- a/lib/message.cc
+++ b/lib/message.cc
@@ -459,7 +459,8 @@ _notmuch_message_ensure_metadata (notmuch_message_t *message, void *field)
/* all the way without an exception */
break;
} catch (const Xapian::DatabaseModifiedError &error) {
- notmuch_status_t status = _notmuch_database_reopen (message->notmuch);
+ notmuch_status_t status = notmuch_database_reopen (message->notmuch,
+ NOTMUCH_DATABASE_MODE_READ_ONLY);
if (status != NOTMUCH_STATUS_SUCCESS)
INTERNAL_ERROR ("unhandled error from notmuch_database_reopen: %s\n",
notmuch_status_to_string (status));
diff --git a/lib/notmuch-private.h b/lib/notmuch-private.h
index 3c52cfc2..ef814378 100644
--- a/lib/notmuch-private.h
+++ b/lib/notmuch-private.h
@@ -204,9 +204,6 @@ _notmuch_message_id_compressed (void *ctx, const char *message_id);
notmuch_status_t
_notmuch_database_ensure_writable (notmuch_database_t *notmuch);
-notmuch_status_t
-_notmuch_database_reopen (notmuch_database_t *notmuch);
-
void
_notmuch_database_log (notmuch_database_t *notmuch,
const char *format, ...);
diff --git a/lib/notmuch.h b/lib/notmuch.h
index 58c568d5..db86ffc0 100644
--- a/lib/notmuch.h
+++ b/lib/notmuch.h
@@ -880,6 +880,13 @@ notmuch_tags_t *
notmuch_database_get_all_tags (notmuch_database_t *db);
/**
+ * Reopen an open notmuch database.
+ *
+ */
+notmuch_status_t
+notmuch_database_reopen (notmuch_database_t *db, notmuch_database_mode_t mode);
+
+/**
* Create a new query for 'database'.
*
* Here, 'database' should be an open database, (see