OPJ_OFF_T file_length = 0;
OPJ_FSEEK(p_file, 0, SEEK_END);
- file_length = (OPJ_UINT64)OPJ_FTELL(p_file);
+ file_length = (OPJ_OFF_T)OPJ_FTELL(p_file);
OPJ_FSEEK(p_file, 0, SEEK_SET);
- return file_length;
+ return (OPJ_UINT64)file_length;
}
static OPJ_SIZE_T opj_write_from_file (void * p_buffer, OPJ_SIZE_T p_nb_bytes, FILE * p_file)
return NULL;
}
- opj_stream_set_user_data(l_stream, p_file);
+ opj_stream_set_user_data_v3(l_stream, p_file, (opj_stream_free_user_data_fn) fclose);
opj_stream_set_user_data_length(l_stream, opj_get_data_length_from_file(p_file));
opj_stream_set_read_function(l_stream, (opj_stream_read_fn) opj_read_from_file);
opj_stream_set_write_function(l_stream, (opj_stream_write_fn) opj_write_from_file);