X-Git-Url: http://wpitchoune.net/gitweb/?p=psensor-pkg-debian.git;a=blobdiff_plain;f=src%2Flib%2Fpio.c;fp=src%2Flib%2Fpio.c;h=f6ebc73df59c541180184f822e97311d79f9bc81;hp=4a1a6ce5b479f96dd8baf6a40fabdc6e9d891fdc;hb=ec32d69fa628fd396e89cf7d57432d509f28c5ae;hpb=e248180cc4ebc258fdd5778a26c08287089165b1 diff --git a/src/lib/pio.c b/src/lib/pio.c index 4a1a6ce..f6ebc73 100644 --- a/src/lib/pio.c +++ b/src/lib/pio.c @@ -168,11 +168,11 @@ char *file_get_content(const char *fpath) page = malloc(size + 1); if (!page || size != fread(page, 1, size, fp)) { free(page); - return NULL; + page = NULL; + } else { + *(page + size) = '\0'; } - *(page + size) = '\0'; - fclose(fp); } else { page = NULL; @@ -185,25 +185,24 @@ char *file_get_content(const char *fpath) long file_get_size(const char *path) { FILE *fp; + long size; if (!is_file(path)) return -1; fp = fopen(path, "rb"); if (fp) { - long size; - if (fseek(fp, 0, SEEK_END) == -1) - return -1; - - size = ftell(fp); + size = -1; + else + size = ftell(fp); fclose(fp); - - return size; + } else { + size = -1; } - return -1; + return size; } #define FCOPY_BUF_SZ 4096