Implemented IO buffer control on win/unix system
This commit is contained in:
parent
a7e1fd65cf
commit
337fa39535
@ -130,10 +130,18 @@ int getSamplesFromFile(RS_IMAGE *img, FILE *f) {
|
|||||||
int sample_bits = img->sampleBits;
|
int sample_bits = img->sampleBits;
|
||||||
int size = div(img->width*img->height*sample_bits, 8).quot;
|
int size = div(img->width*img->height*sample_bits, 8).quot;
|
||||||
|
|
||||||
if (f->_bufsiz >= ftell(f)+size) { //TODO: Check C equivalent
|
#ifdef _WIN32
|
||||||
printf("[ERR] WARNING! Please fix size/sample.");
|
if (f->_bufsiz >= ftell(f)+size) {
|
||||||
return EXIT_FAILURE;
|
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);
|
img->samples = calloc(1, size);
|
||||||
fread(img->samples, size, 1, f);
|
fread(img->samples, size, 1, f);
|
||||||
|
@ -2,6 +2,9 @@
|
|||||||
#define HMT_PARSER_H_
|
#define HMT_PARSER_H_
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
#ifndef _WIN32
|
||||||
|
#include <stdio_ext.h>
|
||||||
|
#endif
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "options.h"
|
#include "options.h"
|
||||||
#include "RS_images.h"
|
#include "RS_images.h"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user