All pastes #746299 Raw Edit

Something

public text v1 · immutable
·published 2007-10-23 03:37 UTC
rendered paste body
char* fgetline(FILE* fp) {
	size_t size = 0;
	char* line = malloc(size);
	char buf = ' ';
	char* tmp;
	
	while (((buf = fgetc(fp)) != '\n') && buf != EOF) {
		size += 2;
		tmp = realloc(line, size);
		
		if (tmp == NULL) {
			tmp = malloc(size);
			strcpy(tmp, line);
		}
		
		line = tmp;
		
		line[size - 2] = buf;
		line[size - 1] = '\0';
	}
	
	return line;
}