diff options
Diffstat (limited to 'fortran/src/H5Af.c')
-rw-r--r-- | fortran/src/H5Af.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/fortran/src/H5Af.c b/fortran/src/H5Af.c index 6b49624..8253781 100644 --- a/fortran/src/H5Af.c +++ b/fortran/src/H5Af.c @@ -924,7 +924,7 @@ done: /*---------------------------------------------------------------------------- * Name: h5aget_num_attrs_c - * Purpose: Call H5Aget_num_attrs to determine number of + * Purpose: Call H5Oget_info to determine number of * attributes of an object * Inputs: obj_id - object identifier * attr_num - number of attributes @@ -936,13 +936,17 @@ done: int_f nh5aget_num_attrs_c (hid_t_f *obj_id, int_f *attr_num) { - int_f ret_value=0; /* Return value */ + H5O_info_t oinfo; /* Object info */ + int_f ret_value = 0; /* Return value */ - /* - * Call H5Aget_num_attrs function. - */ - if ((*attr_num = (int_f)H5Aget_num_attrs((hid_t)*obj_id)) < 0) - HGOTO_DONE(FAIL); + /* + * Call H5Oget_info function. + */ + if(H5Oget_info((hid_t)*obj_id, ".", &oinfo, H5P_DEFAULT) < 0) + HGOTO_DONE(FAIL); + + /* Set number of attributes */ + *attr_num = (int_f)oinfo.num_attrs; done: return ret_value; |