* src/codeconv.c
add parameter check to conv_unmime_header_overwrite()
* src/imap.c
o fix spelling
o fix removing of NEW flag when UNREAD is unset
* src/procmime.c
decode MIME-headers
(Closes 437 i18n attachment display error.)
+2004-03-12 [christoph] 0.9.10claws9
+
+ * src/codeconv.c
+ add parameter check to conv_unmime_header_overwrite()
+
+ * src/imap.c
+ o fix spelling
+ o fix removing of NEW flag when UNREAD is unset
+
+ * src/procmime.c
+ decode MIME-headers
+
+ (Closes 437 i18n attachment display error.)
+
2004-03-12 [paul] 0.9.10claws8
* po/it.po
2004-03-12 [paul] 0.9.10claws8
* po/it.po
MICRO_VERSION=10
INTERFACE_AGE=0
BINARY_AGE=0
MICRO_VERSION=10
INTERFACE_AGE=0
BINARY_AGE=0
if test $EXTRA_VERSION -eq 0; then
VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}claws
else
if test $EXTRA_VERSION -eq 0; then
VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}claws
else
gint buflen;
CharSet cur_charset;
gint buflen;
CharSet cur_charset;
+ g_return_if_fail(str != NULL);
+
cur_charset = conv_get_current_charset();
if (cur_charset == C_EUC_JP) {
cur_charset = conv_get_current_charset();
if (cur_charset == C_EUC_JP) {
if (strchr(name, imap_get_path_separator(IMAP_FOLDER(folder), item->path)) != NULL) {
g_warning(_("New folder name must not contain the namespace "
if (strchr(name, imap_get_path_separator(IMAP_FOLDER(folder), item->path)) != NULL) {
g_warning(_("New folder name must not contain the namespace "
GSList *sorted_list;
/*
GSList *new = NULL, *p_new;
GSList *sorted_list;
/*
GSList *new = NULL, *p_new;
+ GSList *deleted = NULL, *p_deleted;
- GSList *unseen = NULL, *answered = NULL, *flagged = NULL, *deleted = NULL;
- GSList *p_unseen, *p_answered, *p_flagged, *p_deleted;
+ GSList *unseen = NULL, *answered = NULL, *flagged = NULL;
+ GSList *p_unseen, *p_answered, *p_flagged;
GSList *elem;
GSList *seq_list, *cur;
gboolean reverse_seen = FALSE;
GSList *elem;
GSList *seq_list, *cur;
gboolean reverse_seen = FALSE;
p_unseen = unseen;
p_answered = answered;
p_flagged = flagged;
p_unseen = unseen;
p_answered = answered;
p_flagged = flagged;
for (elem = sorted_list; elem != NULL; elem = g_slist_next(elem)) {
MsgInfo *msginfo;
MsgPermFlags flags;
for (elem = sorted_list; elem != NULL; elem = g_slist_next(elem)) {
MsgInfo *msginfo;
MsgPermFlags flags;
msginfo = (MsgInfo *) elem->data;
flags = msginfo->flags.perm_flags;
msginfo = (MsgInfo *) elem->data;
flags = msginfo->flags.perm_flags;
- flags &= ~((reverse_seen ? 0 : MSG_UNREAD) | MSG_REPLIED | MSG_MARKED);
+ wasnew = (flags & MSG_NEW);
+ flags &= ~((reverse_seen ? 0 : MSG_UNREAD | MSG_NEW) | MSG_REPLIED | MSG_MARKED);
+ flags |= MSG_UNREAD | (wasnew ? MSG_NEW : 0);
/*
if (gslist_find_next_num(&p_new, msginfo->msgnum) == msginfo->msgnum)
flags |= MSG_NEW;
*/
if (gslist_find_next_num(&p_unseen, msginfo->msgnum) == msginfo->msgnum) {
if (!reverse_seen) {
/*
if (gslist_find_next_num(&p_new, msginfo->msgnum) == msginfo->msgnum)
flags |= MSG_NEW;
*/
if (gslist_find_next_num(&p_unseen, msginfo->msgnum) == msginfo->msgnum) {
if (!reverse_seen) {
+ flags |= MSG_UNREAD | (wasnew ? MSG_NEW : 0);
} else {
flags &= ~(MSG_UNREAD | MSG_NEW);
}
} else {
flags &= ~(MSG_UNREAD | MSG_NEW);
}
}
imap_seq_set_free(seq_list);
}
imap_seq_set_free(seq_list);
+ /* g_slist_free(deleted); */
g_slist_free(flagged);
g_slist_free(answered);
g_slist_free(unseen);
g_slist_free(flagged);
g_slist_free(answered);
g_slist_free(unseen);
fp = fopen(mimeinfo->filename, "rb");
fseek(fp, mimeinfo->offset, SEEK_SET);
procheader_get_header_fields(fp, hentry);
fp = fopen(mimeinfo->filename, "rb");
fseek(fp, mimeinfo->offset, SEEK_SET);
procheader_get_header_fields(fp, hentry);
+ if (hentry[0].body != NULL)
+ conv_unmime_header_overwrite(hentry[0].body);
+ if (hentry[2].body != NULL)
+ conv_unmime_header_overwrite(hentry[2].body);
+ if (hentry[4].body != NULL)
+ conv_unmime_header_overwrite(hentry[4].body);
content_start = ftell(fp);
fclose(fp);
content_start = ftell(fp);
fclose(fp);
hentry[i].body = NULL;
}
procheader_get_header_fields(fp, hentry);
hentry[i].body = NULL;
}
procheader_get_header_fields(fp, hentry);
+ if (hentry[0].body != NULL)
+ conv_unmime_header_overwrite(hentry[0].body);
+ if (hentry[2].body != NULL)
+ conv_unmime_header_overwrite(hentry[2].body);
+ if (hentry[4].body != NULL)
+ conv_unmime_header_overwrite(hentry[4].body);
lastoffset = ftell(fp);
}
}
lastoffset = ftell(fp);
}
}