summaryrefslogtreecommitdiffstats
path: root/src/H5Gstab.c
diff options
context:
space:
mode:
authorNeil Fortner <nfortne2@hdfgroup.org>2009-04-09 20:22:11 (GMT)
committerNeil Fortner <nfortne2@hdfgroup.org>2009-04-09 20:22:11 (GMT)
commitaffc2a2b7071af91bb9d6b88998107657b738551 (patch)
treef293523fb2b9e03c4f4b18d2646e33111ccca6da /src/H5Gstab.c
parentc8f6207556a42f2408eb075d5c037699751fef8d (diff)
downloadhdf5-affc2a2b7071af91bb9d6b88998107657b738551.zip
hdf5-affc2a2b7071af91bb9d6b88998107657b738551.tar.gz
hdf5-affc2a2b7071af91bb9d6b88998107657b738551.tar.bz2
[svn-r16721] Purpose: Fix problems with "no strct format checks"
Description: Changed H5G_mkroot to be tolerant of files with symbol table information cached but no symbol table in the root group. Also changed H5G_mkroot to properly clean up in case of an error, and changed H5G_stab_is_valid to properly detect errors in H5O_msg_read. Tested: jam, linew, smirom (h5committest), jam (--disable-strict-format-checks)
Diffstat (limited to 'src/H5Gstab.c')
-rw-r--r--src/H5Gstab.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/H5Gstab.c b/src/H5Gstab.c
index c2df8e7..52c9d07 100644
--- a/src/H5Gstab.c
+++ b/src/H5Gstab.c
@@ -1011,7 +1011,8 @@ H5G_stab_valid(H5O_loc_t *grp_oloc, hid_t dxpl_id, H5O_stab_t *alt_stab)
FUNC_ENTER_NOAPI(H5G_stab_valid, FAIL)
/* Read the symbol table message */
- H5O_msg_read(grp_oloc, H5O_STAB_ID, &stab, dxpl_id);
+ if(NULL == H5O_msg_read(grp_oloc, H5O_STAB_ID, &stab, dxpl_id))
+ HGOTO_ERROR(H5E_SYM, H5E_BADMESG, FAIL, "unable to read symbol table message");
/* Check if the symbol table message's b-tree address is valid */
if(H5B_valid(grp_oloc->file, dxpl_id, H5B_SNODE, stab.btree_addr) < 0) {