summaryrefslogtreecommitdiffstats
path: root/src/H5Gdeprec.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2006-11-21 20:22:11 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2006-11-21 20:22:11 (GMT)
commite9262d7320615d78d32d777a416e34b01072191f (patch)
tree8c42f6d8e4519fbeaf66138f3c6337479e49e3e8 /src/H5Gdeprec.c
parent102170c3bfc6fa3583f960ba970eb612567b1c05 (diff)
downloadhdf5-e9262d7320615d78d32d777a416e34b01072191f.zip
hdf5-e9262d7320615d78d32d777a416e34b01072191f.tar.gz
hdf5-e9262d7320615d78d32d777a416e34b01072191f.tar.bz2
[svn-r12963] Description:
Refactor internal code that retrieves the object's type to use the new H5O_type_t (which only definitions for object types, instead of links as well) instead of the older H5G_obj_t (which included links, etc.) Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
Diffstat (limited to 'src/H5Gdeprec.c')
-rw-r--r--src/H5Gdeprec.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/H5Gdeprec.c b/src/H5Gdeprec.c
index b780b0d..3178159 100644
--- a/src/H5Gdeprec.c
+++ b/src/H5Gdeprec.c
@@ -457,6 +457,7 @@ ssize_t
H5Gget_objname_by_idx(hid_t loc_id, hsize_t idx, char *name, size_t size)
{
H5G_loc_t loc; /* Object location */
+ H5O_type_t obj_type; /* Type of object at location */
ssize_t ret_value;
FUNC_ENTER_API(H5Gget_objname_by_idx, FAIL)
@@ -465,8 +466,10 @@ H5Gget_objname_by_idx(hid_t loc_id, hsize_t idx, char *name, size_t size)
/* Check args */
if(H5G_loc(loc_id, &loc) < 0)
HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "not a location ID")
- if(H5O_obj_type(loc.oloc, H5AC_ind_dxpl_id) != H5G_GROUP)
- HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "not a group")
+ if(H5O_obj_type(loc.oloc, &obj_type, H5AC_ind_dxpl_id) < 0)
+ HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, FAIL, "can't get object type")
+ if(obj_type != H5O_TYPE_GROUP)
+ HGOTO_ERROR(H5E_DATASET, H5E_BADTYPE, FAIL, "not a group")
/* Call internal function */
if((ret_value = H5G_obj_get_name_by_idx(loc.oloc, H5L_INDEX_NAME, H5_ITER_INC, idx, name, size, H5AC_ind_dxpl_id)) < 0)