diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2014-04-09 05:08:21 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2014-04-09 05:08:21 (GMT) |
commit | 3de25ee2264f80b4a842af10c69893f4e635951f (patch) | |
tree | f2ffe250f6d1ee0fb377ba69c8c41ade04c09855 /src/H5G.c | |
parent | f32690b53c0872faf9e9ee0d0492cce360f72938 (diff) | |
download | hdf5-3de25ee2264f80b4a842af10c69893f4e635951f.zip hdf5-3de25ee2264f80b4a842af10c69893f4e635951f.tar.gz hdf5-3de25ee2264f80b4a842af10c69893f4e635951f.tar.bz2 |
[svn-r24998] Description:
Check in Neil's changes for correctly handling case where library is
reinitialized through a deprecated routine.
Tested on:
Linux 2.4.x/32 (jam)
Diffstat (limited to 'src/H5G.c')
-rw-r--r-- | src/H5G.c | 23 |
1 files changed, 13 insertions, 10 deletions
@@ -224,16 +224,19 @@ H5G_term_interface(void) FUNC_ENTER_NOAPI_NOINIT_NOERR if(H5_interface_initialize_g) { - if((n = H5I_nmembers(H5I_GROUP))) - H5I_clear_type(H5I_GROUP, FALSE, FALSE); - else { - /* Destroy the group object id group */ - H5I_dec_type_ref(H5I_GROUP); - - /* Mark closed */ - H5_interface_initialize_g = 0; - n = 1; /*H5I*/ - } /* end else */ + if((n = H5I_nmembers(H5I_GROUP))) + H5I_clear_type(H5I_GROUP, FALSE, FALSE); + else { + /* Close deprecated interface */ + n += H5G__term_deprec_interface(); + + /* Destroy the group object id group */ + H5I_dec_type_ref(H5I_GROUP); + + /* Mark closed */ + H5_interface_initialize_g = 0; + n = 1; /*H5I*/ + } /* end else */ } /* end if */ FUNC_LEAVE_NOAPI(n) |