summaryrefslogtreecommitdiffstats
path: root/support/nfs/cacheio.c
diff options
context:
space:
mode:
Diffstat (limited to 'support/nfs/cacheio.c')
-rw-r--r--support/nfs/cacheio.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/support/nfs/cacheio.c b/support/nfs/cacheio.c
index 33231b0..d7ad429 100644
--- a/support/nfs/cacheio.c
+++ b/support/nfs/cacheio.c
@@ -205,16 +205,17 @@ int readline(int fd, char **buf, int *lenp)
*/
char *new;
int nl;
- *lenp += 128;
+ *lenp *= 2;
new = realloc(*buf, *lenp);
if (new == NULL)
return 0;
- nl = read(fd, *buf +len, *lenp - len);
- if (nl <= 0 )
+ *buf = new;
+ nl = read(fd, *buf + len, *lenp - len);
+ if (nl <= 0)
return 0;
- new += nl;
+ len += nl;
}
- (*buf)[len-1] = 0;
+ (*buf)[len-1] = '\0';
return 1;
}