The problem may be located here:
char data[MAX_BUFFER_SIZE];
fileOpen.read(&data[0], size);
This results in a buffer overflow when your file size is greater than
MAX_BUFFER_SIZE<br />
.
To avoid this, allocate the buffer on the heap using
new
or
malloc
:
char data = new char[size];
fileOpen.read(&data[0], size);
delete data;