diff options
author | Robb Matzke <matzke@llnl.gov> | 1999-04-02 13:59:10 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1999-04-02 13:59:10 (GMT) |
commit | 5e319027652b1187c509953f0f9bb80269244c51 (patch) | |
tree | e3d34f6995907a603a9b99363b1b26b73af8cf03 /src/H5I.c | |
parent | ddb367a33552e0d5ace738330322cae567b26783 (diff) | |
download | hdf5-5e319027652b1187c509953f0f9bb80269244c51.zip hdf5-5e319027652b1187c509953f0f9bb80269244c51.tar.gz hdf5-5e319027652b1187c509953f0f9bb80269244c51.tar.bz2 |
[svn-r1171] Changes since 19990330
----------------------
./src/H5A.c
./src/H5D.c
The `bkg' buffers are zeroed before calling the type
conversion function. This fixes a problem where reading a file
compound data structure into memory results in garbage between
the members.
./src/H5I.c
Fixed H5I_clear_group() so it removes entries even when a free
callback is not registered. This fixes fixes an `infinite loop
closing library' warning message.
./src/H5.c
Added ellipses to the end of the infinite loop message.
Diffstat (limited to 'src/H5I.c')
-rw-r--r-- | src/H5I.c | 30 |
1 files changed, 14 insertions, 16 deletions
@@ -403,26 +403,24 @@ H5I_clear_group(H5I_type_t grp) * counts. Ignore the return value from from the free method and remove * object from group regardless. */ - if (grp_ptr->free_func) { - for (i=0; i<grp_ptr->hash_size; i++) { - for (cur=grp_ptr->id_list[i]; cur; cur=next) { - /* Free the object regardless of reference count */ - if ((grp_ptr->free_func)(cur->obj_ptr)<0) { + for (i=0; i<grp_ptr->hash_size; i++) { + for (cur=grp_ptr->id_list[i]; cur; cur=next) { + /* Free the object regardless of reference count */ + if (grp_ptr->free_func && (grp_ptr->free_func)(cur->obj_ptr)<0) { #if H5I_DEBUG - if (H5DEBUG(I)) { - fprintf(H5DEBUG(I), "H5I: free grp=%d obj=0x%08lx " - "failure ignored\n", (int)grp, - (unsigned long)(cur->obj_ptr)); - } -#endif /*H5I_DEBUG*/ + if (H5DEBUG(I)) { + fprintf(H5DEBUG(I), "H5I: free grp=%d obj=0x%08lx " + "failure ignored\n", (int)grp, + (unsigned long)(cur->obj_ptr)); } - - /* Add ID struct to free list */ - next = cur->next; - H5I_release_id_node(cur); +#endif /*H5I_DEBUG*/ } - grp_ptr->id_list[i]=NULL; + + /* Add ID struct to free list */ + next = cur->next; + H5I_release_id_node(cur); } + grp_ptr->id_list[i]=NULL; } done: |