[Re-sending: my message yesterday does not seem to have made it to b.d.u]

Ricardo Mones <[EMAIL PROTECTED]> wrote:

>   Well, without checking I cannot tell it for true at 100%, but I believe
> this bug is already corrected in current unstable/testing version (1.0.3).
> Current woody backport [1] is at 1.0.0beta3, and probably fixes this too.

Sorry no, it is not fixed anywhere.

>   The only thing we can do is patch the current package as Justin proposed
> (it was a trivial patch, isn't it?) and upload it to woody proposed-updates.

I propose the following patch. This "goes cleanly" into versions
1.0.3
1.0.4
1.9.2
1.9.6
and elicits only mild (fuzz/offset) messages for
0.7.4
.

Cheers,

Paul Szabo   [EMAIL PROTECTED]   http://www.maths.usyd.edu.au/u/psz/
School of Mathematics and Statistics   University of Sydney    Australia


--- src/mbox.c.orig     Mon Feb  7 18:48:12 2005
+++ src/mbox.c  Thu Mar 31 08:29:29 2005
@@ -101,6 +101,7 @@
                FILE *tmp_fp;
                GSList *cur;
                gchar *startp, *endp, *rpath;
+               gint empty_prev_line;
                gint empty_line;
                gboolean is_next_msg = FALSE;
                FilterInfo *fltinfo;
@@ -131,17 +132,19 @@
                FPUTS_TO_TMP_ABORT_IF_FAIL(buf);
                from_line[0] = '\0';
 
+               empty_prev_line = 0;
                empty_line = 0;
 
                while (fgets(buf, sizeof(buf), mbox_fp) != NULL) {
                        if (buf[0] == '\n' || buf[0] == '\r') {
+                               empty_prev_line = 1;
                                empty_line++;
                                buf[0] = '\0';
                                continue;
                        }
 
                        /* From separator */
-                       while (!strncmp(buf, "From ", 5)) {
+                       while (empty_prev_line && !strncmp(buf, "From ", 5)) {
                                strcpy(from_line, buf);
                                if (fgets(buf, sizeof(buf), mbox_fp) == NULL) {
                                        buf[0] = '\0';
@@ -163,6 +166,7 @@
                                        break;
                                }
                        }
+                       empty_prev_line = 0;
                        if (is_next_msg) break;
 
                        if (empty_line > 0) {



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to