aboutsummaryrefslogtreecommitdiff
path: root/src/summaryview.c
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-03-28 10:50:42 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-03-28 10:50:42 +0000
commit78ffc1ed2c6fbf42feabfb348d746b5a36be3db8 (patch)
treea75543612f2088840dd905ddd09e94c02208a982 /src/summaryview.c
parentd0c14090a0d5e74834fabd896406bfe2cd212449 (diff)
improved the thread creation.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@190 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/summaryview.c')
-rw-r--r--src/summaryview.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/summaryview.c b/src/summaryview.c
index f0c4ef43..eecb703a 100644
--- a/src/summaryview.c
+++ b/src/summaryview.c
@@ -3031,6 +3031,7 @@ void summary_thread_build(SummaryView *summaryview)
GtkCTreeNode *next;
GtkCTreeNode *parent;
MsgInfo *msginfo;
+ GSList *reflist;
summary_lock(summaryview);
@@ -3051,6 +3052,15 @@ void summary_thread_build(SummaryView *summaryview)
if (msginfo && msginfo->inreplyto) {
parent = g_hash_table_lookup(summaryview->msgid_table,
msginfo->inreplyto);
+ if (!parent && msginfo->references) {
+ for (reflist = msginfo->references;
+ reflist != NULL; reflist = reflist->next)
+ if ((parent = g_hash_table_lookup
+ (summaryview->msgid_table,
+ reflist->data)))
+ break;
+ }
+
if (parent && parent != node) {
gtk_ctree_move(ctree, node, parent, NULL);
gtk_ctree_expand(ctree, node);