From 7b48e3409a8c3ba1e83c929656e84196a6dc2e6d Mon Sep 17 00:00:00 2001 From: David Young Date: Tue, 7 Jul 2020 12:52:00 -0500 Subject: Fix a bug in H5D__virtual_write_one to stop an assertion from failing deep in H5Dwrite---project the *clipped* virtual selection instead of the virtual selection: assertion "((src_space)->select.num_elem) == ((dst_space)->select.num_elem)" failed: file "../../../vchoi_fork/src/H5Sselect.c", line 2617, function "H5S_select_project_intersection" with this backtrace: at /home/dyoung/plain-nbsd/src/lib/libc/gen/raise.c:48 at /home/dyoung/plain-nbsd/src/lib/libc/stdlib/abort.c:74 file=0xae9e3e80 "../../../vchoi_fork/src/H5Sselect.c", line=2617, function=0xae9e4ca0 <__func__.15686> "H5S_select_project_intersection", failedexpr=0xae9e0e54 "((src_space)->select.num_elem) == ((dst_space)->select.num_elem)") at /home/dyoung/plain-nbsd/src/lib/libc/gen/assert.c:72 dst_space=0xae26f0dc, src_intersect_space=0xae0b577c, new_space_ptr=0xbfb85fac, share_selection=true) at ../../../vchoi_fork/src/H5Sselect.c:2749 type_info=type_info@entry=0xbfb86084, file_space=file_space@entry=0xae0b577c, source_dset=0xae24741c, io_info=) at ../../../vchoi_fork/src/H5Dvirtual.c:2784 type_info=0xbfb86084, nelmts=256, file_space=0xae0b577c, mem_space=0xae26ec8c, fm=0xadf0401c) at ../../../vchoi_fork/src/H5Dvirtual.c:2873 mem_type_id=216172782113783837, mem_space=0xae26ec8c, file_space=0xae0b577c, buf=0xae203808) at ../../../vchoi_fork/src/H5Dio.c:780 mem_type_id=216172782113783837, mem_space_id=288230376151711754, file_space_id=288230376151711755, dxpl_id=792633534417207304, buf=0xae203808, req=0x0) at ../../../vchoi_fork/src/H5VLnative_dataset.c:206 mem_type_id=216172782113783837, mem_space_id=288230376151711754, file_space_id=288230376151711755, dxpl_id=792633534417207304, buf=0xae203808, req=0x0, cls=) at ../../../vchoi_fork/src/H5VLcallback.c:2152 mem_type_id=216172782113783837, mem_space_id=288230376151711754, file_space_id=288230376151711755, dxpl_id=792633534417207304, buf=0xae203808, req=0x0) at ../../../vchoi_fork/src/H5VLcallback.c:2186 mem_type_id=216172782113783837, mem_space_id=288230376151711754, file_space_id=288230376151711755, dxpl_id=792633534417207304, buf=0xae203808) at ../../../vchoi_fork/src/H5Dio.c:313 --- src/H5Dvirtual.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/H5Dvirtual.c b/src/H5Dvirtual.c index e07f538..8519ec8 100644 --- a/src/H5Dvirtual.c +++ b/src/H5Dvirtual.c @@ -2781,7 +2781,7 @@ H5D__virtual_write_one(H5D_io_info_t *io_info, const H5D_type_info_t *type_info, * extent in the unlimited dimension. -NAF */ /* Project intersection of file space and mapping virtual space onto * mapping source space */ - if(H5S_select_project_intersection(source_dset->virtual_select, source_dset->clipped_source_select, file_space, &projected_src_space, TRUE) < 0) + if(H5S_select_project_intersection(source_dset->clipped_virtual_select, source_dset->clipped_source_select, file_space, &projected_src_space, TRUE) < 0) HGOTO_ERROR(H5E_DATASET, H5E_CANTCLIP, FAIL, "can't project virtual intersection onto source space") /* Perform write on source dataset */ -- cgit v0.12