diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2011-07-28 21:29:20 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2011-07-28 21:29:20 (GMT) |
commit | f2ac83272f7d85c2509d5cc240e351ca66162a5d (patch) | |
tree | dfd5ecadc523563595aef6d0a25ba79e6a4243ce /src/H5T.c | |
parent | 0069b4b190cb654706d325487caa91a6ad93dc31 (diff) | |
download | hdf5-f2ac83272f7d85c2509d5cc240e351ca66162a5d.zip hdf5-f2ac83272f7d85c2509d5cc240e351ca66162a5d.tar.gz hdf5-f2ac83272f7d85c2509d5cc240e351ca66162a5d.tar.bz2 |
[svn-r21153] Description:
Bring r21152 from trunk to 1.8 branch:
Further patches for Jira 7638, to ensure that H5D/Aget_type will
be attached to the correct top file. (This change to the library should
reverted when Jira 7638 is finally finished)
Tested on:
FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode
Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
w/C++ & FORTRAN, w/threadsafe, in debug mode
(h5committested on trunk)
Diffstat (limited to 'src/H5T.c')
-rw-r--r-- | src/H5T.c | 36 |
1 files changed, 36 insertions, 0 deletions
@@ -5301,3 +5301,39 @@ done: FUNC_LEAVE_NOAPI(ret_value) } /* end H5T_set_latest_version() */ + +/*------------------------------------------------------------------------- + * Function: H5T_patch_file + * + * Purpose: Patch the top-level file pointers contained in dt to point + * to f, if dt is a committed type. This is possible because + * the top-level file pointer can be closed out from under + * dt while dt is contained in the shared file's cache. + * + * Return: SUCCEED + * + * Programmer: Neil Fortner + * Thursday, July 14, 2011 + * + *------------------------------------------------------------------------- + */ +herr_t +H5T_patch_file(H5T_t *dt, H5F_t *f) +{ + herr_t ret_value = SUCCEED; + + FUNC_ENTER_NOAPI(H5T_patch_file, FAIL) + + /* Sanity check */ + HDassert(dt); + HDassert(f); + + if(H5T_STATE_OPEN == dt->shared->state || H5T_STATE_NAMED == dt->shared->state) { + dt->oloc.file = f; + dt->sh_loc.file = f; + } /* end if */ + +done: + FUNC_LEAVE_NOAPI(ret_value) +} /* end H5T_patch_file() */ + |