diff options
author | Raymond Lu <songyulu@hdfgroup.org> | 2007-01-12 20:29:43 (GMT) |
---|---|---|
committer | Raymond Lu <songyulu@hdfgroup.org> | 2007-01-12 20:29:43 (GMT) |
commit | 77ce08c35687fc2ed4bf338318aa5fcff46750b0 (patch) | |
tree | e4c070170d6be036cb2184c067e39b87e9a60ecc /tools/h5dump | |
parent | 7072d7103d9ec03c4f1d1217cc45e966d867edbc (diff) | |
download | hdf5-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.c | 1 | ||||
-rw-r--r-- | tools/h5dump/h5dumpgentest.c | 4 |
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); |