2 * fgetline.c: implementation of fgetline.h.
9 char *fgetline(FILE *fp
)
11 char *ret
= snewn(512, char);
12 int size
= 512, len
= 0;
13 while (fgets(ret
+ len
, size
- len
, fp
)) {
14 len
+= strlen(ret
+ len
);
15 if (ret
[len
-1] == '\n')
16 break; /* got a newline, we're done */
18 ret
= sresize(ret
, size
, char);
20 if (len
== 0) { /* first fgets returned NULL */