X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/17932f7aea1c21cf17738f47996345d9d0a6ce51..521674623:/uip/dropsbr.c diff --git a/uip/dropsbr.c b/uip/dropsbr.c index 09ee2c1f..2cf5b598 100644 --- a/uip/dropsbr.c +++ b/uip/dropsbr.c @@ -14,7 +14,6 @@ #include #include #include -#include #ifdef NTOHLSWAP # include @@ -41,7 +40,7 @@ static int map_open (char *, int); int mbx_open (char *file, int mbx_style, uid_t uid, gid_t gid, mode_t mode) { - int j, count, fd; + int j, count, fd = NOTOK; struct stat st; j = 0; @@ -62,7 +61,7 @@ mbx_open (char *file, int mbx_style, uid_t uid, gid_t gid, mode_t mode) case ETXTBSY: j = errno; sleep (5); - break; + continue; default: /* just return error */ @@ -307,6 +306,10 @@ mbx_copy (char *mailbox, int mbx_style, int md, int fd, } while ((i = read (fd, buffer, sizeof(buffer))) > 0) { + /* valgrind noticed that stringdex depends on null + termination. */ + buffer[i] = '\0'; + for (j = 0; (j = stringdex (mmdlm1, buffer)) >= 0; buffer[j]++)