diff options
Diffstat (limited to 'extra/procmail/procmail-getline.patch')
-rw-r--r-- | extra/procmail/procmail-getline.patch | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/extra/procmail/procmail-getline.patch b/extra/procmail/procmail-getline.patch new file mode 100644 index 000000000..e795dd787 --- /dev/null +++ b/extra/procmail/procmail-getline.patch @@ -0,0 +1,57 @@ + diff -Nru procmail-3.22.orig/src/fields.c procmail-3.22/src/fields.c + --- procmail-3.22.orig/src/fields.c 2009-05-15 21:59:51.768416278 +0200 + +++ procmail-3.22/src/fields.c 2009-05-15 22:00:58.128416259 +0200 + @@ -110,16 +110,16 @@ + /* try and append one valid field to rdheader from stdin */ + int readhead P((void)) + { int idlen; + - getline(); + + get_line(); + if((idlen=breakfield(buf,buffilled))<=0) /* not the start of a valid field */ + return 0; + if(idlen==STRLEN(FROM)&&eqFrom_(buf)) /* it's a From_ line */ + { if(rdheader) + return 0; /* the From_ line was a fake! */ + - for(;buflast=='>';getline()); /* gather continued >From_ lines */ + + for(;buflast=='>';get_line()); /* gather continued >From_ lines */ + } + else + - for(;;getline()) /* get the rest of the continued field */ + + for(;;get_line()) /* get the rest of the continued field */ + { switch(buflast) /* will this line be continued? */ + { case ' ':case '\t': /* yep, it sure is */ + continue; + diff -Nru procmail-3.22.orig/src/formail.c procmail-3.22/src/formail.c + --- procmail-3.22.orig/src/formail.c 2009-05-15 21:59:51.768416278 +0200 + +++ procmail-3.22/src/formail.c 2009-05-15 22:01:23.778416754 +0200 + @@ -819,7 +819,7 @@ + { if(split) /* gobble up the next start separator */ + { buffilled=0; + #ifdef sMAILBOX_SEPARATOR + - getline();buffilled=0; /* but only if it's defined */ + + get_line();buffilled=0; /* but only if it's defined */ + #endif + if(buflast!=EOF) /* if any */ + goto splitit; + diff -Nru procmail-3.22.orig/src/formisc.c procmail-3.22/src/formisc.c + --- procmail-3.22.orig/src/formisc.c 2009-05-15 21:59:51.768416278 +0200 + +++ procmail-3.22/src/formisc.c 2009-05-15 22:02:00.538416155 +0200 + @@ -115,7 +115,7 @@ + buf[buffilled++]=c; + } + + -int getline P((void)) /* read a newline-terminated line */ + +int get_line P((void)) /* read a newline-terminated line */ + { if(buflast==EOF) /* at the end of our Latin already? */ + { loadchar('\n'); /* fake empty line */ + return EOF; /* spread the word */ + diff -Nru procmail-3.22.orig/src/formisc.h procmail-3.22/src/formisc.h + --- procmail-3.22.orig/src/formisc.h 2009-05-15 21:59:51.768416278 +0200 + +++ procmail-3.22/src/formisc.h 2009-05-15 22:02:12.028416164 +0200 + @@ -17,4 +17,4 @@ + char* + skipwords P((char*start)); + int + - getline P((void)); + + get_line P((void)); + |