+2002-07-11 [christoph] 0.7.8claws60
+
+ * src/compose.c
+ * src/procmsg.c
+ first use the message number to find the message
+ to mark with a reply flag but check the
+ message-id if we got the correct message, if not
+ try to find it by message-id.
+ use new string seperator that is not allowed
+ in message-ids.
+
2002-07-11 [paul] 0.7.8claws59
* sync with 0.7.8cvs23
gchar *folderid;
folderid = folder_item_get_identifier(compose->replyinfo->folder);
- fprintf(fp, "RMID:%s%%%s\n", folderid, compose->replyinfo->msgid);
+ fprintf(fp, "RMID:%s\x7f%d\x7f%s\n", folderid, compose->replyinfo->msgnum, compose->replyinfo->msgid);
g_free(folderid);
}
fprintf(fp, "\n");
gchar **tokens;
FolderItem *item;
- tokens = g_strsplit(replymessageid, "%", 0);
+ tokens = g_strsplit(replymessageid, "\x7f", 0);
item = folder_find_item_from_identifier(tokens[0]);
if(item != NULL) {
MsgInfo *msginfo;
- msginfo = folder_item_fetch_msginfo_by_id(item, tokens[1]);
+ msginfo = folder_item_fetch_msginfo(item, atoi(tokens[1]));
+ if((msginfo != NULL) && (strcmp(msginfo->msgid, tokens[2]) != 0)) {
+ procmsg_msginfo_free(msginfo);
+ msginfo = NULL;
+ }
+
+ if(msginfo == NULL) {
+ msginfo = folder_item_fetch_msginfo_by_id(item, tokens[2]);
+ }
+
if(msginfo != NULL) {
procmsg_msginfo_unset_flags(msginfo, MSG_FORWARDED, 0);
procmsg_msginfo_set_flags(msginfo, MSG_REPLIED, 0);