aboutsummaryrefslogtreecommitdiffhomepage
path: root/notmuch-tag.c
diff options
context:
space:
mode:
authorGravatar Carl Worth <cworth@cworth.org>2010-11-10 17:36:09 -0800
committerGravatar Carl Worth <cworth@cworth.org>2010-11-11 03:40:19 -0800
commitbb74e9dff80e64734308d5997c756fd96d041235 (patch)
tree1e2fdc7824e128b532bb505b9d3dccafcc730750 /notmuch-tag.c
parent4cfb2a02778bac16e785bbea1fd6c665e34bd955 (diff)
lib: Rework interface for maildir_flags synchronization
Instead of having an API for setting a library-wide flag for synchronization (notmuch_database_set_maildir_sync) we instead implement maildir synchronization with two new library functions: notmuch_message_maildir_flags_to_tags and notmuch_message_tags_to_maildir_flags These functions are nicely documented here, (though the implementation does not quite match the documentation yet---as plainly evidenced by the current results of the test suite).
Diffstat (limited to 'notmuch-tag.c')
-rw-r--r--notmuch-tag.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/notmuch-tag.c b/notmuch-tag.c
index 53f08f43..60e21e0d 100644
--- a/notmuch-tag.c
+++ b/notmuch-tag.c
@@ -45,6 +45,7 @@ notmuch_tag_command (void *ctx, unused (int argc), unused (char *argv[]))
notmuch_messages_t *messages;
notmuch_message_t *message;
struct sigaction action;
+ notmuch_bool_t synchronize_flags;
int i;
/* Setup our handler for SIGINT */
@@ -100,8 +101,8 @@ notmuch_tag_command (void *ctx, unused (int argc), unused (char *argv[]))
NOTMUCH_DATABASE_MODE_READ_WRITE);
if (notmuch == NULL)
return 1;
- notmuch_database_set_maildir_sync (notmuch,
- notmuch_config_get_maildir_synchronize_flags (config));
+
+ synchronize_flags = notmuch_config_get_maildir_synchronize_flags (config);
query = notmuch_query_create (notmuch, query_string);
if (query == NULL) {
@@ -129,6 +130,9 @@ notmuch_tag_command (void *ctx, unused (int argc), unused (char *argv[]))
notmuch_message_thaw (message);
+ if (synchronize_flags)
+ notmuch_message_tags_to_maildir_flags (message);
+
notmuch_message_destroy (message);
}