aboutsummaryrefslogtreecommitdiffhomepage
path: root/notmuch-restore.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-restore.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-restore.c')
-rw-r--r--notmuch-restore.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/notmuch-restore.c b/notmuch-restore.c
index 98660b32..f095f64a 100644
--- a/notmuch-restore.c
+++ b/notmuch-restore.c
@@ -25,6 +25,7 @@ notmuch_restore_command (unused (void *ctx), int argc, char *argv[])
{
notmuch_config_t *config;
notmuch_database_t *notmuch;
+ notmuch_bool_t synchronize_flags;
FILE *input;
char *line = NULL;
size_t line_size;
@@ -41,8 +42,8 @@ notmuch_restore_command (unused (void *ctx), int argc, char *argv[])
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);
+
if (argc) {
input = fopen (argv[0], "r");
if (input == NULL) {
@@ -133,6 +134,9 @@ notmuch_restore_command (unused (void *ctx), int argc, char *argv[])
notmuch_message_thaw (message);
+ if (synchronize_flags)
+ notmuch_message_tags_to_maildir_flags (message);
+
NEXT_LINE:
if (message)
notmuch_message_destroy (message);