summaryrefslogtreecommitdiffstats
path: root/src/H5Gobj.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2006-11-14 02:29:15 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2006-11-14 02:29:15 (GMT)
commit0b1bb5bda1296bb89d48c7542883ea25a5fb2174 (patch)
tree563f70f8b154cb91adeb3026932a93dd1cea4e41 /src/H5Gobj.c
parentf494ab7674dc39225deb4a06ba211f82f3e9df5e (diff)
downloadhdf5-0b1bb5bda1296bb89d48c7542883ea25a5fb2174.zip
hdf5-0b1bb5bda1296bb89d48c7542883ea25a5fb2174.tar.gz
hdf5-0b1bb5bda1296bb89d48c7542883ea25a5fb2174.tar.bz2
[svn-r12907] Description:
Finish refactoring internal link deletion code, to make it possible to wrap up the H5Ldelete_by_idx() coding. Tested on: Linxu/32 2.6 (chicago) Linxu/64 2.6 (chicago2)
Diffstat (limited to 'src/H5Gobj.c')
-rw-r--r--src/H5Gobj.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/H5Gobj.c b/src/H5Gobj.c
index c450e46..5e68d6b 100644
--- a/src/H5Gobj.c
+++ b/src/H5Gobj.c
@@ -823,7 +823,7 @@ done:
*-------------------------------------------------------------------------
*/
herr_t
-H5G_obj_remove(H5O_loc_t *oloc, const char *name, H5G_obj_t *obj_type, hid_t dxpl_id)
+H5G_obj_remove(H5O_loc_t *oloc, H5RS_str_t *grp_full_path_r, const char *name, hid_t dxpl_id)
{
H5O_linfo_t linfo; /* Link info message */
hbool_t use_old_format; /* Whether to use 'old format' (symbol table) for deletion or not */
@@ -834,7 +834,6 @@ H5G_obj_remove(H5O_loc_t *oloc, const char *name, H5G_obj_t *obj_type, hid_t dxp
/* Sanity check */
HDassert(oloc);
HDassert(name && *name);
- HDassert(obj_type);
/* Attempt to get the link info for this group */
if(H5O_read(oloc, H5O_LINFO_ID, 0, &linfo, dxpl_id)) {
@@ -844,12 +843,12 @@ H5G_obj_remove(H5O_loc_t *oloc, const char *name, H5G_obj_t *obj_type, hid_t dxp
/* Check for dense or compact storage */
if(H5F_addr_defined(linfo.link_fheap_addr)) {
/* Remove object from the dense link storage */
- if(H5G_dense_remove(oloc->file, dxpl_id, &linfo, name, obj_type) < 0)
+ if(H5G_dense_remove(oloc->file, dxpl_id, &linfo, grp_full_path_r, name) < 0)
HGOTO_ERROR(H5E_SYM, H5E_NOTFOUND, FAIL, "can't remove object")
} /* end if */
else {
/* Remove object from the link messages */
- if(H5G_compact_remove(oloc, name, obj_type, dxpl_id) < 0)
+ if(H5G_compact_remove(oloc, dxpl_id, grp_full_path_r, name) < 0)
HGOTO_ERROR(H5E_SYM, H5E_NOTFOUND, FAIL, "can't remove object")
} /* end else */
} /* end if */
@@ -861,7 +860,7 @@ H5G_obj_remove(H5O_loc_t *oloc, const char *name, H5G_obj_t *obj_type, hid_t dxp
use_old_format = TRUE;
/* Remove object from the symbol table */
- if(H5G_stab_remove(oloc, name, obj_type, dxpl_id) < 0)
+ if(H5G_stab_remove(oloc, dxpl_id, grp_full_path_r, name) < 0)
HGOTO_ERROR(H5E_SYM, H5E_NOTFOUND, FAIL, "can't remove object")
} /* end else */