X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fudev%2Fcollect%2Fcollect.c;fp=src%2Fudev%2Fcollect%2Fcollect.c;h=6580a091e0a95890f0975b0131030a135e2d08cb;hb=7d566799022b24fef2bb8ca6d671bf8ad14d9e26;hp=7850cfa4187ef0394260ff0ceac190faee55ee82;hpb=48deb058b62b7245d59344134a126a3d5bdb5b58;p=elogind.git diff --git a/src/udev/collect/collect.c b/src/udev/collect/collect.c index 7850cfa41..6580a091e 100644 --- a/src/udev/collect/collect.c +++ b/src/udev/collect/collect.c @@ -139,12 +139,14 @@ static int checkout(int fd) restart: len = bufsize >> 1; - buf = calloc(1,bufsize + 1); + buf = malloc(bufsize + 1); if (!buf) { fprintf(stderr, "Out of memory.\n"); return log_oom(); } memset(buf, ' ', bufsize); + buf[bufsize] = '\0'; + ptr = buf + len; while ((read(fd, buf + len, len)) > 0) { while (ptr && *ptr) {