diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2004-11-27 17:54:04 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2004-11-27 17:54:04 (GMT) |
commit | 1729192d9e6172c419814084ae2c65194e293735 (patch) | |
tree | b85d98e0fbf87838b291cbd248624e46543535d9 /src/H5T.c | |
parent | b52107a42a19c26894d18f88cab801749c32c34f (diff) | |
download | hdf5-1729192d9e6172c419814084ae2c65194e293735.zip hdf5-1729192d9e6172c419814084ae2c65194e293735.tar.gz hdf5-1729192d9e6172c419814084ae2c65194e293735.tar.bz2 |
[svn-r9584] Purpose:
Code optimization
Description:
Revise mechanism for calling H5open/H5check to better avoid calling them
from internal libray code.
Only copy a datatype's group entry information if it has some.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Solaris 2.7 (arabica)
Too minor to require h5committest
Diffstat (limited to 'src/H5T.c')
-rw-r--r-- | src/H5T.c | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -3256,9 +3256,10 @@ H5T_copy(const H5T_t *old_dt, H5T_copy_t method) break; } /* end switch */ - /* Deep copy of the symbol table entry */ - if (H5G_ent_copy(&(new_dt->ent), &(old_dt->ent),H5G_COPY_DEEP)<0) - HGOTO_ERROR(H5E_SYM, H5E_CANTOPENOBJ, NULL, "unable to copy entry"); + /* Deep copy of the symbol table entry, if there was one */ + if (H5F_addr_defined(old_dt->ent.header)) + if (H5G_ent_copy(&(new_dt->ent), &(old_dt->ent),H5G_COPY_DEEP)<0) + HGOTO_ERROR(H5E_SYM, H5E_CANTOPENOBJ, NULL, "unable to copy entry"); /* Set return value */ ret_value=new_dt; |