summaryrefslogtreecommitdiffstats
path: root/fortran/src/H5Lf.c
diff options
context:
space:
mode:
authorScot Breitenfeld <brtnfld@hdfgroup.org>2009-09-15 20:19:02 (GMT)
committerScot Breitenfeld <brtnfld@hdfgroup.org>2009-09-15 20:19:02 (GMT)
commit84527bc7ac95a86ec04fac16872408f8139eb29c (patch)
tree6a7ce37b76ed641d5914fd100f0ce25227444490 /fortran/src/H5Lf.c
parent8537263df1cb4fd30c0d32ff2b75b1dbb7f61152 (diff)
downloadhdf5-84527bc7ac95a86ec04fac16872408f8139eb29c.zip
hdf5-84527bc7ac95a86ec04fac16872408f8139eb29c.tar.gz
hdf5-84527bc7ac95a86ec04fac16872408f8139eb29c.tar.bz2
[svn-r17482]
Bug 1652 - h5lget_info_by_idx_f missing/broken functionalit * added returned val_sel, link_type and address that were missing In the process, fixed the integer type in H5lget_info_f for address and val_sel * wrote test for val_sel, address, and link_type returned values * to check address values added h5Oopen_by_addr_f function and test program. Tested: smirom (pgf90/pgcc, ifort/icc) linew jam (gcc/g95)
Diffstat (limited to 'fortran/src/H5Lf.c')
-rw-r--r--fortran/src/H5Lf.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/fortran/src/H5Lf.c b/fortran/src/H5Lf.c
index 4378f33..2832d44 100644
--- a/fortran/src/H5Lf.c
+++ b/fortran/src/H5Lf.c
@@ -396,7 +396,7 @@ done:
int_f
nh5lget_info_c (hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen,
int_f *cset, int_f *corder, int_f *corder_valid, int_f *link_type,
- int_f *address, hsize_t_f *val_size,
+ haddr_t_f *address, size_t_f *val_size,
hid_t_f *lapl_id)
{
char *c_link_name = NULL; /* Buffer to hold C string */
@@ -421,8 +421,8 @@ nh5lget_info_c (hid_t_f *link_loc_id, _fcd link_name, size_t_f *link_namelen,
*corder_valid = 0;
if(link_buff.corder_valid > 0) *corder_valid = 1;
*link_type = (int_f)link_buff.type;
- *address = (int_f)link_buff.u.address;
- *val_size = (hsize_t)link_buff.u.val_size;
+ *address = (haddr_t_f)link_buff.u.address;
+ *val_size = (size_t_f)link_buff.u.val_size;
done:
return ret_value;
@@ -453,7 +453,7 @@ done:
int_f
nh5lget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
int_f *index_field, int_f *order, hsize_t_f *n,
- int_f *corder_valid, int_f *corder, int_f *cset, hsize_t_f *data_size, hid_t_f *lapl_id)
+ int_f *link_type, int_f *corder_valid, int_f *corder, int_f *cset, haddr_t_f *address, size_t_f *val_size, hid_t_f *lapl_id)
{
char *c_group_name = NULL; /* Buffer to hold C string */
H5_index_t c_index_field;
@@ -483,7 +483,9 @@ nh5lget_info_by_idx_c(hid_t_f *loc_id, _fcd group_name, size_t_f *group_namelen,
*corder = (int_f)link_buff.corder;
*cset = (int_f)link_buff.cset;
- *data_size = (hsize_t)link_buff.u.val_size;
+ *link_type = (int_f)link_buff.type;
+ *address = (haddr_t_f)link_buff.u.address;
+ *val_size = (size_t_f)link_buff.u.val_size;
done:
return ret_value;