diff options
Diffstat (limited to 'd.h')
| -rwxr-xr-x | d.h | 24 | 
1 files changed, 24 insertions, 0 deletions
| @@ -0,0 +1,24 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +enum { +	bufsize = 0x20, +}; + +static char * +getall(FILE *in) +{ +	char buf[bufsize]; +	static char *contents = NULL; +	int len = 0, read; +	while ((read = fread(buf, 1, bufsize, in)) > 0) { +		len += read; +		contents = realloc(contents, len); +		memmove(&contents[len-read], buf, read); +	} +	contents = realloc(contents, ++len); +	contents[len-1] = '\0'; + +	return contents; +} | 
