summaryrefslogtreecommitdiffstats
path: root/src/H5Dint.c
diff options
context:
space:
mode:
authorVailin Choi <vchoi@hdfgroup.org>2016-07-04 23:21:06 (GMT)
committerVailin Choi <vchoi@hdfgroup.org>2016-07-04 23:21:06 (GMT)
commitdfe0d7984a32dcef677eb8d70a355f093512624c (patch)
tree8fc14ff9560f76d06903c6de1e9ac02fb5c123cd /src/H5Dint.c
parent2889ea742e5c78b629ac69f6e8f9046843487d13 (diff)
downloadhdf5-dfe0d7984a32dcef677eb8d70a355f093512624c.zip
hdf5-dfe0d7984a32dcef677eb8d70a355f093512624c.tar.gz
hdf5-dfe0d7984a32dcef677eb8d70a355f093512624c.tar.bz2
[svn-r30145] Merge of checkin #30143 to the trunk which is a bug fix for HDFFV-9940.
Tested on oxs1010test, moohan, platypus, emu, kite, kituo, mayll, ostrich, quail.
Diffstat (limited to 'src/H5Dint.c')
-rw-r--r--src/H5Dint.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/H5Dint.c b/src/H5Dint.c
index 3d20e53..16ced02 100644
--- a/src/H5Dint.c
+++ b/src/H5Dint.c
@@ -638,6 +638,11 @@ H5D__init_type(H5F_t *file, const H5D_t *dset, hid_t type_id, const H5T_t *type)
if((dset->shared->type = H5T_copy(type, H5T_COPY_ALL)) == NULL)
HGOTO_ERROR(H5E_DATASET, H5E_CANTCOPY, FAIL, "can't copy datatype")
+ /* Convert a datatype (if committed) to a transient type if the committed datatype's file
+ location is different from the file location where the dataset will be created */
+ if(H5T_convert_committed_datatype(dset->shared->type, file) < 0)
+ HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "can't get shared datatype info")
+
/* Mark any datatypes as being on disk now */
if(H5T_set_loc(dset->shared->type, file, H5T_LOC_DISK) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "can't set datatype location")