diff options
Diffstat (limited to 'src/H5Ffamily.c')
-rw-r--r-- | src/H5Ffamily.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/H5Ffamily.c b/src/H5Ffamily.c index d9fb032..0a035e2 100644 --- a/src/H5Ffamily.c +++ b/src/H5Ffamily.c @@ -27,7 +27,7 @@ #include <H5MMprivate.h> #define PABLO_MASK H5F_family -static hbool_t interface_initialize_g = FALSE; +static intn interface_initialize_g = 0; #define INTERFACE_INIT NULL #define H5F_FAM_OFFSET(LF,ADDR) ((off_t)((ADDR)->offset % \ @@ -454,11 +454,14 @@ H5F_fam_write(H5F_low_t *lf, const H5F_access_t *access_parms, /* * Make sure the logical eof is large enough to handle the request. + * Do not decrease the EOF */ max_addr = cur_addr; H5F_addr_inc(&max_addr, (hsize_t)nbytes); - H5F_low_seteof(lf->u.fam.memb[membno], &max_addr); - + if (H5F_addr_gt(&max_addr, &(lf->u.fam.memb[membno]->eof))) { + H5F_low_seteof(lf->u.fam.memb[membno], &max_addr); + } + /* Write the data to the member */ if (H5F_low_write(lf->u.fam.memb[membno], access_parms->u.fam.memb_access, xfer_mode, |