summaryrefslogtreecommitdiffstats
path: root/tools/h5dump
diff options
context:
space:
mode:
authorRaymond Lu <songyulu@hdfgroup.org>2007-01-12 20:29:43 (GMT)
committerRaymond Lu <songyulu@hdfgroup.org>2007-01-12 20:29:43 (GMT)
commit77ce08c35687fc2ed4bf338318aa5fcff46750b0 (patch)
treee4c070170d6be036cb2184c067e39b87e9a60ecc /tools/h5dump
parent7072d7103d9ec03c4f1d1217cc45e966d867edbc (diff)
downloadhdf5-77ce08c35687fc2ed4bf338318aa5fcff46750b0.zip
hdf5-77ce08c35687fc2ed4bf338318aa5fcff46750b0.tar.gz
hdf5-77ce08c35687fc2ed4bf338318aa5fcff46750b0.tar.bz2
[svn-r13139] Fixed the MULTI problem (Bug #731) that corrupted the data. The problem
came from the EOA for the whole MULTI file. It's taken out because it's meaningless for MULTI file. Instead, each individual file has its EOA.
Diffstat (limited to 'tools/h5dump')
-rw-r--r--tools/h5dump/h5dump.c1
-rw-r--r--tools/h5dump/h5dumpgentest.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/tools/h5dump/h5dump.c b/tools/h5dump/h5dump.c
index 8386551..6b9f31a 100644
--- a/tools/h5dump/h5dump.c
+++ b/tools/h5dump/h5dump.c
@@ -6223,6 +6223,7 @@ h5_fileaccess(void)
assert(HDstrlen(multi_letters)==H5FD_MEM_NTYPES);
for (mt=H5FD_MEM_DEFAULT; mt<H5FD_MEM_NTYPES; H5_INC_ENUM(H5FD_mem_t,mt)) {
memb_fapl[mt] = H5P_DEFAULT;
+ memb_map[mt] = mt;
sprintf(sv[mt], "%%s-%c.h5", multi_letters[mt]);
memb_name[mt] = sv[mt];
memb_addr[mt] = MAX(mt-1,0)*(HADDR_MAX/10);
diff --git a/tools/h5dump/h5dumpgentest.c b/tools/h5dump/h5dumpgentest.c
index 83f009a..f7355fb 100644
--- a/tools/h5dump/h5dumpgentest.c
+++ b/tools/h5dump/h5dumpgentest.c
@@ -3026,10 +3026,13 @@ void gent_multi(void)
for (mt = H5FD_MEM_DEFAULT; mt < H5FD_MEM_NTYPES; H5_INC_ENUM(H5FD_mem_t,mt)) {
memb_fapl[mt] = H5P_DEFAULT;
+ memb_map[mt] = mt;
sprintf(sv[mt], "%%s-%c.h5", multi_letters[mt]);
memb_name[mt] = sv[mt];
+/*printf("memb_name[%d]=%s, memb_map[%d]=%d; ", mt, memb_name[mt], mt, memb_map[mt]);*/
memb_addr[mt] = MAX(mt - 1,0) * (HADDR_MAX / 10);
}
+ memb_map[H5FD_MEM_DEFAULT] = H5FD_MEM_SUPER;
H5Pset_fapl_multi(fapl, memb_map, memb_fapl, memb_name,
memb_addr, FALSE);
@@ -3047,6 +3050,7 @@ void gent_multi(void)
dset[i][j] = i + j;
H5Dwrite(dataset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, dset);
+
H5Sclose(space);
H5Dclose(dataset);
H5Fclose(fid);