diff options
author | Binh-Minh Ribler <bmribler@hdfgroup.org> | 2016-10-20 19:07:45 (GMT) |
---|---|---|
committer | Binh-Minh Ribler <bmribler@hdfgroup.org> | 2016-10-20 19:07:45 (GMT) |
commit | 14e308b2e6eada778818abf53949ceef0e7b2a34 (patch) | |
tree | b850fc142df53eab56fdd5593067ca455e20d93e /hl/src | |
parent | b6bb7c123a02570a33f02257d738e50195dbeb3a (diff) | |
download | hdf5-14e308b2e6eada778818abf53949ceef0e7b2a34.zip hdf5-14e308b2e6eada778818abf53949ceef0e7b2a34.tar.gz hdf5-14e308b2e6eada778818abf53949ceef0e7b2a34.tar.bz2 |
Description:
- Removed calls to H5Tget_native_type in the PT code. The application would
need to do that if desired.
- Added Abhi's program to tests to verify the fix.
- This fix might have fixed HDFFV-9927, HDFFV-9042, and the issue reported
by Barbara Jones from Ametek as well.
Platforms tested:
Linux/32 2.6 (jam)
Linux/64 (jelly)
Darwin (osx1010test)
Diffstat (limited to 'hl/src')
-rw-r--r-- | hl/src/H5PT.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/hl/src/H5PT.c b/hl/src/H5PT.c index 647cbe8..5f0f94f 100644 --- a/hl/src/H5PT.c +++ b/hl/src/H5PT.c @@ -141,7 +141,9 @@ hid_t H5PTcreate(hid_t loc_id, if(H5Pclose(plistcopy_id) < 0) goto error; - if((table->type_id = H5Tget_native_type(dtype_id, H5T_DIR_DEFAULT)) < 0) + /* Make a copy of caller's datatype and save it in the table structure. + It will be closed when the table is closed */ + if((table->type_id = H5Tcopy(dtype_id)) < 0) goto error; H5PT_create_index(table); @@ -259,12 +261,11 @@ hid_t H5PTcreate_fl ( hid_t loc_id, if(H5Pclose(plist_id) < 0) goto error; + /* Make a copy of caller's datatype and save it in the table structure. + It will be closed when the table is closed */ if((table->type_id = H5Tcopy(dtype_id)) < 0) goto error; - if((table->type_id = H5Tget_native_type(table->type_id, H5T_DIR_DEFAULT)) < 0) - goto error; - H5PT_create_index(table); table->size = 0; @@ -352,8 +353,9 @@ hid_t H5PTopen( hid_t loc_id, if((type_id = H5Dget_type(table->dset_id)) < 0) goto error; - /* Get the table's native datatype */ - if((table->type_id = H5Tget_native_type(type_id, H5T_DIR_ASCEND)) < 0) + /* Make a copy of the datatype obtained and save it in the table structure. + It will be closed when the table is closed */ + if((table->type_id = H5Tcopy(type_id)) < 0) goto error; /* Close the disk datatype */ |