summaryrefslogtreecommitdiffstats
path: root/src/H5Omessage.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2007-07-05 20:01:42 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2007-07-05 20:01:42 (GMT)
commit6930f2e32df5651c66d3bf3e8fea9b6de23b1843 (patch)
tree1f3429a63977df619ddba6ae3fe1d6486c029b73 /src/H5Omessage.c
parentb37dc182824c52a9b2c3a634dbe098773d518885 (diff)
downloadhdf5-6930f2e32df5651c66d3bf3e8fea9b6de23b1843.zip
hdf5-6930f2e32df5651c66d3bf3e8fea9b6de23b1843.tar.gz
hdf5-6930f2e32df5651c66d3bf3e8fea9b6de23b1843.tar.bz2
[svn-r13945] Description:
Modify semantics for constant messages slightly, to allow them to be deleted, but not modified. This works around the issue where "old" style groups are being created with the symbol table message marked constant in the 1.6 (and prior) branch, but the 1.8 branch needs to remove the symbol table message when the group has been changed to the "new" style (upon insertion of a link that the "old" style can't handle). Tested on: Mac OS X/32 10.4.10 (amazon) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
Diffstat (limited to 'src/H5Omessage.c')
-rw-r--r--src/H5Omessage.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/src/H5Omessage.c b/src/H5Omessage.c
index 3538db1..799f267 100644
--- a/src/H5Omessage.c
+++ b/src/H5Omessage.c
@@ -1052,17 +1052,14 @@ H5O_msg_remove_cb(H5O_t *oh, H5O_mesg_t *mesg/*in,out*/, unsigned sequence,
/*
* Keep track of how many times we failed trying to remove constant
* messages.
+ * (OK to remove constant messages - QAK)
*/
- if(mesg->flags & H5O_MSG_FLAG_CONSTANT)
- udata->nfailed++;
- else {
- /* Convert message into a null message */
- if(H5O_release_mesg(udata->f, udata->dxpl_id, oh, mesg, udata->adj_link) < 0)
- HGOTO_ERROR(H5E_OHDR, H5E_CANTDELETE, H5_ITER_ERROR, "unable to release message")
-
- /* Indicate that the object header was modified */
- *oh_modified = TRUE;
- } /* end else */
+ /* Convert message into a null message */
+ if(H5O_release_mesg(udata->f, udata->dxpl_id, oh, mesg, udata->adj_link) < 0)
+ HGOTO_ERROR(H5E_OHDR, H5E_CANTDELETE, H5_ITER_ERROR, "unable to release message")
+
+ /* Indicate that the object header was modified */
+ *oh_modified = TRUE;
/* Break out now, if we've found the correct message */
if(udata->sequence == H5O_FIRST || udata->sequence != H5O_ALL)