'\0'; that was pointless. Don't assign to line[--len], only decrement
len; line is a private buffer beloging to fgetln and we should not be
scribbling in it; this was also pointless anyway. Set
fromheader[fromcount] to '\0' after copying the characters from line
into it; do the same for subjheader.
err(EX_OSERR, "Failed fopen(%s)", filename);
}
err(EX_OSERR, "Failed fopen(%s)", filename);
}
- fromheader[0] = subjheader[0] = '\0';
fromcount = subjcount = 0;
while ((line = fgetln(file, &len))) {
if (len <= 1) {
break;
}
fromcount = subjcount = 0;
while ((line = fgetln(file, &len))) {
if (len <= 1) {
break;
}
if (len > FROMLEN && strncmp(line, "From: ", FROMLEN) == 0) {
line += FROMLEN;
if (len > FROMLEN && strncmp(line, "From: ", FROMLEN) == 0) {
line += FROMLEN;
fromcount = FROMCOUNT;
}
strncpy(fromheader, line, fromcount);
fromcount = FROMCOUNT;
}
strncpy(fromheader, line, fromcount);
+ fromheader[fromcount] = '\0';
} else if (len > SUBJLEN && strncmp(line, "Subject: ", SUBJLEN) == 0) {
line += SUBJLEN;
len -= SUBJLEN;
} else if (len > SUBJLEN && strncmp(line, "Subject: ", SUBJLEN) == 0) {
line += SUBJLEN;
len -= SUBJLEN;
subjcount = SUBJCOUNT;
}
strncpy(subjheader, line, subjcount);
subjcount = SUBJCOUNT;
}
strncpy(subjheader, line, subjcount);
+ subjheader[subjcount] = '\0';