]> git.marmaro.de Git - mmh/blobdiff - uip/scansbr.c
Fix a bug where a message header ending right on the stdio boundary
[mmh] / uip / scansbr.c
index 835a88483d79c8ed40300b1933eb21d014a273ad..1f2785a06cdc424dae2ee427749fdba17ff2cef6 100644 (file)
@@ -207,6 +207,15 @@ scan (FILE *inb, int innum, int outnum, char *nfs, int width, int curflg,
 
            case BODY: 
                compnum = -1;
 
            case BODY: 
                compnum = -1;
+               /*
+                * A slight hack ... if we have less than rlwidth characters
+                * in the buffer, call m_getfld again.
+                */
+
+               if ((i = strlen(tmpbuf)) < rlwidth) {
+                   state = m_getfld (state, name, tmpbuf + i,
+                                     rlwidth - i, inb);
+               }
                if (! outnum) {
                    state = FILEEOF; /* stop now if scan cmd */
                    goto finished;
                if (! outnum) {
                    state = FILEEOF; /* stop now if scan cmd */
                    goto finished;