From f26da0ad5c679936274917c3d1e53821250414f6 Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Sun, 28 Dec 2014 17:42:35 +0000
Subject: [PATCH] Need to fix line reads
---
src/utils.c | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/src/utils.c b/src/utils.c
index 682d304..0878b74 100644
--- a/src/utils.c
+++ b/src/utils.c
@@ -106,16 +106,17 @@
char *fgetl(FILE *fp)
{
if(feof(fp)) return 0;
- unsigned long size = 512;
+ size_t size = 512;
char *line = malloc(size*sizeof(char));
if(!fgets(line, size, fp)){
free(line);
return 0;
}
- int curr = strlen(line);
+ size_t curr = strlen(line);
- while(line[curr-1]!='\n'){
+ while((line[curr-1] != '\n') && !feof(fp)){
+ printf("%ld %ld\n", curr, size);
size *= 2;
line = realloc(line, size*sizeof(char));
if(!line) {
@@ -125,7 +126,7 @@
fgets(&line[curr], size-curr, fp);
curr = strlen(line);
}
- line[curr-1] = '\0';
+ if(line[curr-1] == '\n') line[curr-1] = '\0';
return line;
}
--
Gitblit v1.10.0