version 1.1.1.1, 2012/02/21 16:23:02
|
version 1.1.1.2, 2012/10/09 09:29:52
|
Line 52 getline(char **bufp, size_t *bufsizep, FILE *fp)
|
Line 52 getline(char **bufp, size_t *bufsizep, FILE *fp)
|
buf = fgetln(fp, &len); |
buf = fgetln(fp, &len); |
if (buf) { |
if (buf) { |
bufsize = *bufp ? *bufsizep : 0; |
bufsize = *bufp ? *bufsizep : 0; |
if (bufsize < len + 1) { | if (bufsize == 0 || bufsize - 1 < len) { |
bufsize = len + 1; |
bufsize = len + 1; |
cp = *bufp ? realloc(*bufp, bufsize) : malloc(bufsize); |
cp = *bufp ? realloc(*bufp, bufsize) : malloc(bufsize); |
if (cp == NULL) |
if (cp == NULL) |