]> git.notmuchmail.org Git - notmuch/blobdiff - lib/message.cc
lib: Introduce macros for bit operations
[notmuch] / lib / message.cc
index bbfc2500bd92f12dfade22db471fb6b22bf9613b..55d2ff69fff4c479c2dfa4e430bb88bcfe441025 100644 (file)
@@ -869,7 +869,7 @@ notmuch_bool_t
 notmuch_message_get_flag (notmuch_message_t *message,
                          notmuch_message_flag_t flag)
 {
-    return message->flags & (1 << flag);
+    return NOTMUCH_TEST_BIT (message->flags, flag);
 }
 
 void
@@ -877,9 +877,9 @@ notmuch_message_set_flag (notmuch_message_t *message,
                          notmuch_message_flag_t flag, notmuch_bool_t enable)
 {
     if (enable)
-       message->flags |= (1 << flag);
+       NOTMUCH_SET_BIT (&message->flags, flag);
     else
-       message->flags &= ~(1 << flag);
+       NOTMUCH_CLEAR_BIT (&message->flags, flag);
 }
 
 time_t
@@ -896,6 +896,9 @@ notmuch_message_get_date (notmuch_message_t *message)
        return 0;
     }
 
+    if (value.empty ())
+       /* sortable_unserialise is undefined on empty string */
+       return 0;
     return Xapian::sortable_unserialise (value);
 }