diff --git a/src/HMT_Parser.c b/src/HMT_Parser.c index 3163112..c9f629b 100644 --- a/src/HMT_Parser.c +++ b/src/HMT_Parser.c @@ -130,10 +130,18 @@ int getSamplesFromFile(RS_IMAGE *img, FILE *f) { int sample_bits = img->sampleBits; int size = div(img->width*img->height*sample_bits, 8).quot; - if (f->_bufsiz >= ftell(f)+size) { //TODO: Check C equivalent - printf("[ERR] WARNING! Please fix size/sample."); - return EXIT_FAILURE; - } + #ifdef _WIN32 + if (f->_bufsiz >= ftell(f)+size) { + printf("[ERR] WARNING! Please fix size/sample."); + return EXIT_FAILURE; + } + #else + if (__fbufsize(f) >= ftell(f)+size) { + printf("[ERR] WARNING! Please fix size/sample."); + return EXIT_FAILURE; + } + #endif + img->samples = calloc(1, size); fread(img->samples, size, 1, f); diff --git a/src/HMT_Parser.h b/src/HMT_Parser.h index 50dbd38..020b1e6 100644 --- a/src/HMT_Parser.h +++ b/src/HMT_Parser.h @@ -2,6 +2,9 @@ #define HMT_PARSER_H_ #include +#ifndef _WIN32 + #include +#endif #include #include "options.h" #include "RS_images.h"