Hi,

I'm working on a compression filter for HDF5, but I had some problems with
jhdf5 opening the filtered datasets.

I managed to trace down the problem to this: the filter plugin is found,
starts execution, but when it wants to free the original buffer, the
program exits with a memory heap corruption error. This is a minimal
version of the filter that reproduces the error:

size_t H5Z_dummy_filter(unsigned int flags, size_t cd_nelmts, const
unsigned int cd_values[], size_t nbytes, size_t *buf_size, void **buf)
{
    int* outbuf = (int*)malloc(*buf_size);
    memcpy(outbuf, *buf, *buf_size);
    free(*buf);    // error occurs here
    *buf = outbuf;
    return nbytes;
}

This (dummy) filter works from C++, from the command line with h5dump, and
also with HDFView. I only had a problem when using it with Fiji, which uses
the jhdf5 library (14.12.2).

I compiled the dll with Visual Studio 2013 on Windows 7 64 bit, and use the
64 bit version of Java 8 with Fiji.

Thanks in advance for the help!
Cheers,
Balint
_______________________________________________
Hdf-forum is for HDF software users discussion.
Hdf-forum@lists.hdfgroup.org
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5

Reply via email to