summaryrefslogtreecommitdiffstats
path: root/src/H5EAiblock.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/H5EAiblock.c')
-rw-r--r--src/H5EAiblock.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/H5EAiblock.c b/src/H5EAiblock.c
index 75c2c85..78db20e 100644
--- a/src/H5EAiblock.c
+++ b/src/H5EAiblock.c
@@ -387,8 +387,12 @@ HDfprintf(stderr, "%s: Called\n", FUNC);
for(u = 0; u < iblock->nsblk_addrs; u++) {
/* Check for data block existing */
if(H5F_addr_defined(iblock->sblk_addrs[u])) {
-HDfprintf(stderr, "%s: Deleting super blocks not supported yet!\n", FUNC);
-HDassert(0 && "Deleting super blocks not supported!");
+ /* Delete super block */
+ if(H5EA__sblock_delete(hdr, dxpl_id, iblock->sblk_addrs[u], (unsigned)(u + iblock->nsblks)) < 0)
+ H5E_THROW(H5E_CANTDELETE, "unable to delete extensible array super block")
+ iblock->sblk_addrs[u] = HADDR_UNDEF;
+HDfprintf(stderr, "%s: Deleting super blocks not tested yet!\n", FUNC);
+HDassert(0 && "Deleting super blocks not tested!");
} /* end if */
} /* end for */
} /* end if */