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