From 197b29ced6edb455ebac3d78f916d763a58a0d72 Mon Sep 17 00:00:00 2001 From: Vailin Choi Date: Sun, 14 Aug 2016 18:02:49 -0500 Subject: [svn-r30289] Fix for HDFFV-9960 H5DOappend without append callback. This is the second part of the fix--see crucible review HDF5-383. Tested on mayll, platypus, osx1010test, emu, kituo, kite, quail, moohan, ostrich. --- hl/src/H5DO.c | 38 ++++++++++++++++++-------------------- 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/hl/src/H5DO.c b/hl/src/H5DO.c index f59f2ca..e2b436a 100644 --- a/hl/src/H5DO.c +++ b/hl/src/H5DO.c @@ -238,26 +238,24 @@ H5DOappend(hid_t dset_id, hid_t dxpl_id, unsigned axis, size_t extension, goto done; /* No boundary for this axis */ - if(boundary[axis] == 0) { - ret_value = SUCCEED; - goto done; - } - - /* Determine whether a boundary is hit or not */ - for(k = start[axis]; k < size[axis]; k++) - if(!((k + 1) % boundary[axis])) { - hit = TRUE; - break; - } - - if(hit) { /* Hit the boundary */ - /* Invoke callback if there is one */ - if(append_cb && append_cb(dset_id, size, udata) < 0) - goto done; - - /* Do a dataset flush */ - if(H5Dflush(dset_id) < 0) - goto done; + if(boundary[axis] != 0) { + + /* Determine whether a boundary is hit or not */ + for(k = start[axis]; k < size[axis]; k++) + if(!((k + 1) % boundary[axis])) { + hit = TRUE; + break; + } + + if(hit) { /* Hit the boundary */ + /* Invoke callback if there is one */ + if(append_cb && append_cb(dset_id, size, udata) < 0) + goto done; + + /* Do a dataset flush */ + if(H5Dflush(dset_id) < 0) + goto done; + } /* end if */ } /* end if */ /* Indicate success */ -- cgit v0.12