summaryrefslogtreecommitdiffstats
path: root/src/H5Dpkg.h
diff options
context:
space:
mode:
authorVailin Choi <vchoi@hdfgroup.org>2009-04-16 15:21:01 (GMT)
committerVailin Choi <vchoi@hdfgroup.org>2009-04-16 15:21:01 (GMT)
commit35bbc743d4cf77d6aa8af2acf5578db02e5129ca (patch)
tree7da01b2a6b5eee7c1cef255d64702071dea01572 /src/H5Dpkg.h
parent52fed52f9c6078729586186594e6e6955becb984 (diff)
downloadhdf5-35bbc743d4cf77d6aa8af2acf5578db02e5129ca.zip
hdf5-35bbc743d4cf77d6aa8af2acf5578db02e5129ca.tar.gz
hdf5-35bbc743d4cf77d6aa8af2acf5578db02e5129ca.tar.bz2
[svn-r16764] To fix a bug in extensible arrays as chunk index:
When the dataset is closed in H5D_close(), the pointer to the extensible array struct in the layout message is copied via H5D_flush_real() before H5D_chunk_dest(). This causes an abort from "Assertion `ea->hdr' failed" later when the dataset is re-opened and read. The bug was fixed by adding a flag to the reset function for indexed storage to set/not set the address of the indexed array. H5O_layout_copy() calls H5D_chunk_idx_reset() to reset only the pointer of the array struct for the chunked index storage.
Diffstat (limited to 'src/H5Dpkg.h')
-rw-r--r--src/H5Dpkg.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/H5Dpkg.h b/src/H5Dpkg.h
index 4122326..b936dba 100644
--- a/src/H5Dpkg.h
+++ b/src/H5Dpkg.h
@@ -281,7 +281,7 @@ typedef herr_t (*H5D_chunk_copy_shutdown_func_t)(H5O_layout_t *layout_src,
H5O_layout_t *layout_dst, hid_t dxpl_id);
typedef herr_t (*H5D_chunk_size_func_t)(const H5D_chk_idx_info_t *idx_info,
hsize_t *idx_size);
-typedef herr_t (*H5D_chunk_reset_func_t)(H5O_layout_t *layout);
+typedef herr_t (*H5D_chunk_reset_func_t)(H5O_layout_t *layout, hbool_t reset_addr);
typedef herr_t (*H5D_chunk_dump_func_t)(const H5D_chk_idx_info_t *idx_info,
FILE *stream);
typedef herr_t (*H5D_chunk_dest_func_t)(const H5D_chk_idx_info_t *idx_info);