aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-02-28 07:19:02 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-02-28 07:19:02 +0000
commite9f2d81aafc3d39e2838ea931c048e05b466f9a2 (patch)
treecf9bcde6070c11d2a5d5f2104bf9a2e7c54ca0a1 /src
parent1976ac750c74858714cae55a01b6703c75529fe0 (diff)
generate References: from In-Reply-To: even if the parent message doesn't have Message-Id:.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@133 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src')
-rw-r--r--src/compose.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/src/compose.c b/src/compose.c
index 4f81babc..3293b79f 100644
--- a/src/compose.c
+++ b/src/compose.c
@@ -1216,13 +1216,17 @@ static gint compose_parse_header(Compose *compose, MsgInfo *msginfo)
hentry[H_LIST_POST].body = NULL;
}
- if (compose->mode == COMPOSE_REEDIT && msginfo->inreplyto)
- compose->inreplyto = g_strdup(msginfo->inreplyto);
- else if (compose->mode != COMPOSE_REEDIT &&
- msginfo->msgid && *msginfo->msgid) {
+ if (compose->mode == COMPOSE_REEDIT) {
+ if (msginfo->inreplyto && *msginfo->inreplyto)
+ compose->inreplyto = g_strdup(msginfo->inreplyto);
+ return 0;
+ }
+
+ if (msginfo->msgid && *msginfo->msgid)
compose->inreplyto = g_strdup(msginfo->msgid);
- if (!compose->references) {
+ if (!compose->references) {
+ if (msginfo->msgid && *msginfo->msgid) {
if (msginfo->inreplyto && *msginfo->inreplyto)
compose->references =
g_strdup_printf("<%s>\n\t<%s>",
@@ -1232,6 +1236,10 @@ static gint compose_parse_header(Compose *compose, MsgInfo *msginfo)
compose->references =
g_strconcat("<", msginfo->msgid, ">",
NULL);
+ } else if (msginfo->inreplyto && *msginfo->inreplyto) {
+ compose->references =
+ g_strconcat("<", msginfo->inreplyto, ">",
+ NULL);
}
}