summaryrefslogtreecommitdiffstats
path: root/src/H5Doh.c
diff options
context:
space:
mode:
authorMohamad Chaarawi <chaarawi@hdfgroup.org>2015-10-06 18:31:47 (GMT)
committerMohamad Chaarawi <chaarawi@hdfgroup.org>2015-10-06 18:31:47 (GMT)
commit2ec9b447ec40c6a6486cbd2f577083fc905556fa (patch)
tree151498ddaec775d775b87d14515381351ec56f79 /src/H5Doh.c
parentd05369f41d078275b9f8879283ff9504a6a9f520 (diff)
parentdb00c23829fb80c35709be1b6de5781e51a134e0 (diff)
downloadhdf5-2ec9b447ec40c6a6486cbd2f577083fc905556fa.zip
hdf5-2ec9b447ec40c6a6486cbd2f577083fc905556fa.tar.gz
hdf5-2ec9b447ec40c6a6486cbd2f577083fc905556fa.tar.bz2
[svn-r27972] merge from trunk.
Diffstat (limited to 'src/H5Doh.c')
-rw-r--r--src/H5Doh.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/H5Doh.c b/src/H5Doh.c
index ed4352e..5a55b2c 100644
--- a/src/H5Doh.c
+++ b/src/H5Doh.c
@@ -398,6 +398,17 @@ H5O__dset_bh_info(H5F_t *f, hid_t dxpl_id, H5O_t *oh, H5_ih_info_t *bh_info)
if(H5D__chunk_bh_info(f, dxpl_id, &layout, &pline, &(bh_info->index_size)) < 0)
HGOTO_ERROR(H5E_OHDR, H5E_CANTGET, FAIL, "can't determine chunked dataset btree info")
} /* end if */
+ else if(layout.type == H5D_VIRTUAL
+ && (layout.storage.u.virt.serial_list_hobjid.addr != HADDR_UNDEF)) {
+ size_t virtual_heap_size;
+
+ /* Get size of global heap object for virtual dataset */
+ if(H5HG_get_obj_size(f, dxpl_id, &(layout.storage.u.virt.serial_list_hobjid), &virtual_heap_size) < 0)
+ HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, FAIL, "can't get global heap size for virtual dataset mapping")
+
+ /* Return heap size */
+ bh_info->heap_size = (hsize_t)virtual_heap_size;
+ } /* end if */
/* Check for External File List message in the object header */
if((exists = H5O_msg_exists_oh(oh, H5O_EFL_ID)) < 0)