diff options
-rw-r--r-- | camel/ChangeLog | 8 | ||||
-rw-r--r-- | camel/camel-folder-thread.c | 9 |
2 files changed, 16 insertions, 1 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog index c3f6c2de8b..a7da8cda01 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,3 +1,11 @@ +2001-02-02 Not Zed <NotZed@Ximian.com> + + * camel-folder-thread.c (camel_folder_thread_messages_new): When + we drop a fake node, dont skip checking the next in the list. + (camel_folder_thread_messages_new): Add an assertion check just to + make sure we dont get any pseudo nodes, and spit a warning if we + do. + 2001-02-04 Jeffrey Stedfast <fejj@ximian.com> * camel-stream-filter.c (do_write): Make do_write loop until the diff --git a/camel/camel-folder-thread.c b/camel/camel-folder-thread.c index 8f55452c98..af8872c619 100644 --- a/camel/camel-folder-thread.c +++ b/camel/camel-folder-thread.c @@ -554,13 +554,20 @@ camel_folder_thread_messages_new(CamelFolder *folder, GPtrArray *uids) scan->next = newtop->next; /* and link the now 'real' node into the list */ newtop->next = child->next; - c = newtop->next; + c = newtop; e_memchunk_free(thread->node_chunks, child); } else { c = child; } } + /* this is only debug assertion stuff */ + c = (CamelFolderThreadNode *)&head; + while (c->next) { + c = c->next; + if (c->message == NULL) + g_warning("threading missed removing a pseudo node: %s\n", c->root_subject); + } thread->tree = head; |