talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit 93c1503de4633bf15b730ebfa44a958e57649a4f
parent fa3c6f74e2217af644520034c45ef8cb432934ce
Author: Colin Leroy <colin@colino.net>
Date:   Mon, 24 May 2021 10:32:29 +0200

Fix email detection on dnd with large headers

Diffstat:
Msrc/common/utils.c | 8+++++---
1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/common/utils.c b/src/common/utils.c @@ -4009,13 +4009,12 @@ gboolean file_is_email (const gchar *filename) { FILE *fp = NULL; gchar buffer[2048]; - gint i = 0; gint score = 0; if (filename == NULL) return FALSE; if ((fp = claws_fopen(filename, "rb")) == NULL) return FALSE; - while (i < 60 && score < 3 + while (score < 3 && claws_fgets(buffer, sizeof (buffer), fp) != NULL) { if (!strncmp(buffer, "From:", strlen("From:"))) score++; @@ -4025,7 +4024,10 @@ gboolean file_is_email (const gchar *filename) score++; else if (!strncmp(buffer, "Subject:", strlen("Subject:"))) score++; - i++; + else if (!strcmp(buffer, "\r\n")) { + debug_print("End of headers\n"); + break; + } } claws_fclose(fp); return (score >= 3);