]> git.notmuchmail.org Git - notmuch/blobdiff - lib/notmuch-private.h
Fix "too many open files" bug by closing message files when done with them.
[notmuch] / lib / notmuch-private.h
index 657816f17d665dafadf138f303943b58f34fcaaf..ddf0674aa9adc61cd61ec43fa4557808b9100589 100644 (file)
@@ -167,13 +167,12 @@ _notmuch_message_create (const void *talloc_owner,
                         notmuch_private_status_t *status);
 
 notmuch_message_t *
-_notmuch_message_create_for_message_id (const void *talloc_owner,
-                                       notmuch_database_t *notmuch,
+_notmuch_message_create_for_message_id (notmuch_database_t *notmuch,
                                        const char *message_id,
                                        notmuch_private_status_t *status);
 
 const char *
-_notmuch_message_get_subject (notmuch_message_t *message);
+_notmuch_message_get_in_reply_to (notmuch_message_t *message);
 
 notmuch_private_status_t
 _notmuch_message_add_term (notmuch_message_t *message,
@@ -208,6 +207,9 @@ _notmuch_message_set_date (notmuch_message_t *message,
 void
 _notmuch_message_sync (notmuch_message_t *message);
 
+void
+_notmuch_message_close (notmuch_message_t *message);
+
 /* index.cc */
 
 notmuch_status_t
@@ -280,12 +282,35 @@ notmuch_message_file_get_header (notmuch_message_file_t *message,
 
 /* messages.c */
 
+typedef struct _notmuch_message_node {
+    notmuch_message_t *message;
+    struct _notmuch_message_node *next;
+} notmuch_message_node_t;
+
+typedef struct _notmuch_message_list {
+    notmuch_message_node_t *head;
+    notmuch_message_node_t **tail;
+} notmuch_message_list_t;
+
+notmuch_message_list_t *
+_notmuch_message_list_create (const void *ctx);
+
+void
+_notmuch_message_list_append (notmuch_message_list_t *list,
+                             notmuch_message_node_t *node);
+
+void
+_notmuch_message_list_add_message (notmuch_message_list_t *list,
+                                  notmuch_message_t *message);
+
 notmuch_messages_t *
-_notmuch_messages_create (void *ctx);
+_notmuch_messages_create (notmuch_message_list_t *list);
+
+/* message.cc */
 
 void
-_notmuch_messages_add_message (notmuch_messages_t *messages,
-                              notmuch_message_t *message);
+_notmuch_message_add_reply (notmuch_message_t *message,
+                           notmuch_message_node_t *reply);
 
 /* date.c */