diff options
author | Mohamad Chaarawi <chaarawi@hdfgroup.org> | 2012-03-22 14:40:08 (GMT) |
---|---|---|
committer | Mohamad Chaarawi <chaarawi@hdfgroup.org> | 2012-03-22 14:40:08 (GMT) |
commit | d17a7fa26e972714082c5061f29f6b9335e189f4 (patch) | |
tree | ddc656ce236b5bff340f7d686e975ce7f24da55a /src/H5Gloc.c | |
parent | 10dd81d6bf70d17a573f8202fbf375e6badd18b3 (diff) | |
download | hdf5-d17a7fa26e972714082c5061f29f6b9335e189f4.zip hdf5-d17a7fa26e972714082c5061f29f6b9335e189f4.tar.gz hdf5-d17a7fa26e972714082c5061f29f6b9335e189f4.tar.bz2 |
[svn-r22119] Changes:
- add VOL implementation for H5O, H5D, and H5T functions
- update the VOL interface with H5VLget routines
- make upper level IDs of Type H5I_XXX_PUBLIC
- bug fixes
Comments:
- some routines still don't go through VOL but have a workaround so they don't have to at the moment.
Diffstat (limited to 'src/H5Gloc.c')
-rw-r--r-- | src/H5Gloc.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/H5Gloc.c b/src/H5Gloc.c index f0c2a9c..b29776f 100644 --- a/src/H5Gloc.c +++ b/src/H5Gloc.c @@ -161,11 +161,19 @@ H5G_loc(hid_t id, H5G_loc_t *loc) { H5I_t *uid_info; /* user id structure */ hid_t loc_id; + H5I_type_t id_type; herr_t ret_value = SUCCEED; /* Return value */ FUNC_ENTER_NOAPI(FAIL) - if (H5I_UID == H5I_get_type(id)) { + id_type = H5I_get_type(id); + /* get the actual ID from an upper ID level */ + /* MSC - this is a workaround to allow the test suite to pass and + at some point needs to be removed once all high level operations + that needs to go through the VOL actually go through the VOL*/ + if (H5I_FILE_PUBLIC == id_type || H5I_GROUP_PUBLIC == id_type || + H5I_DATASET_PUBLIC == id_type || H5I_DATATYPE_PUBLIC == id_type || + H5I_ATTRIBUTE_PUBLIC == id_type) { if(NULL == (uid_info = (H5I_t *)H5I_object(id))) HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "invalid user identifier") loc_id = uid_info->obj_id; @@ -174,7 +182,6 @@ H5G_loc(hid_t id, H5G_loc_t *loc) loc_id = id; } switch(H5I_get_type(loc_id)) { - case H5I_UID: case H5I_FILE: { H5F_t *f; |