summaryrefslogtreecommitdiffstats
path: root/src/H5B2int.c
diff options
context:
space:
mode:
authorDana Robinson <derobins@hdfgroup.org>2015-05-18 15:03:27 (GMT)
committerDana Robinson <derobins@hdfgroup.org>2015-05-18 15:03:27 (GMT)
commitbcea2068905e02e4d209f105dac7d61ea56b6b35 (patch)
tree30d03c845dbdd1d0744394f2dd0997215323fa43 /src/H5B2int.c
parent1f85a96f3eadda5ab08ef24008947e6f63c0baa8 (diff)
downloadhdf5-bcea2068905e02e4d209f105dac7d61ea56b6b35.zip
hdf5-bcea2068905e02e4d209f105dac7d61ea56b6b35.tar.gz
hdf5-bcea2068905e02e4d209f105dac7d61ea56b6b35.tar.bz2
[svn-r27099] Merge of r27045 from trunk
Renamed H5_ASSIGN_OVERFLOW() to H5_CHECKED_ASSIGN() and re-ordered the arguments to be in a more logical order. Fixes HDFFV-9322 Tested on: h5committest
Diffstat (limited to 'src/H5B2int.c')
-rw-r--r--src/H5B2int.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/H5B2int.c b/src/H5B2int.c
index 2df8179..97bfe2d 100644
--- a/src/H5B2int.c
+++ b/src/H5B2int.c
@@ -382,13 +382,13 @@ H5B2_split_root(H5B2_hdr_t *hdr, hid_t dxpl_id)
/* Update node info for new depth of tree */
sz_max_nrec = H5B2_NUM_INT_REC(hdr, hdr->depth);
- H5_ASSIGN_OVERFLOW(/* To: */ hdr->node_info[hdr->depth].max_nrec, /* From: */ sz_max_nrec, /* From: */ size_t, /* To: */ unsigned)
+ H5_CHECKED_ASSIGN(hdr->node_info[hdr->depth].max_nrec, unsigned, sz_max_nrec, size_t)
hdr->node_info[hdr->depth].split_nrec = (hdr->node_info[hdr->depth].max_nrec * hdr->split_percent) / 100;
hdr->node_info[hdr->depth].merge_nrec = (hdr->node_info[hdr->depth].max_nrec * hdr->merge_percent) / 100;
hdr->node_info[hdr->depth].cum_max_nrec = ((hdr->node_info[hdr->depth].max_nrec + 1) *
hdr->node_info[hdr->depth - 1].cum_max_nrec) + hdr->node_info[hdr->depth].max_nrec;
u_max_nrec_size = H5VM_limit_enc_size((uint64_t)hdr->node_info[hdr->depth].cum_max_nrec);
- H5_ASSIGN_OVERFLOW(/* To: */ hdr->node_info[hdr->depth].cum_max_nrec_size, /* From: */ u_max_nrec_size, /* From: */ unsigned, /* To: */ uint8_t)
+ H5_CHECKED_ASSIGN(hdr->node_info[hdr->depth].cum_max_nrec_size, uint8_t, u_max_nrec_size, unsigned)
if(NULL == (hdr->node_info[hdr->depth].nat_rec_fac = H5FL_fac_init(hdr->cls->nrec_size * hdr->node_info[hdr->depth].max_nrec)))
HGOTO_ERROR(H5E_RESOURCE, H5E_CANTINIT, FAIL, "can't create node native key block factory")
if(NULL == (hdr->node_info[hdr->depth].node_ptr_fac = H5FL_fac_init(sizeof(H5B2_node_ptr_t) * (hdr->node_info[hdr->depth].max_nrec + 1))))
@@ -546,8 +546,9 @@ H5B2_redistribute2(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth,
/* Count the number of records being moved */
for(u=0; u<move_nrec; u++)
moved_nrec += right_node_ptrs[u].all_nrec;
- left_moved_nrec = moved_nrec;
- right_moved_nrec -= moved_nrec;
+
+ H5_CHECKED_ASSIGN(left_moved_nrec, hssize_t, moved_nrec, hsize_t)
+ right_moved_nrec -= (hssize_t)moved_nrec;
/* Copy node pointers from right node to left */
HDmemcpy(&(left_node_ptrs[*left_nrec+1]),&(right_node_ptrs[0]),sizeof(H5B2_node_ptr_t)*move_nrec);
@@ -599,8 +600,9 @@ H5B2_redistribute2(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth,
/* Count the number of records being moved */
for(u = 0; u < move_nrec; u++)
moved_nrec += right_node_ptrs[u].all_nrec;
- left_moved_nrec -= moved_nrec;
- right_moved_nrec = moved_nrec;
+
+ left_moved_nrec -= (hssize_t)moved_nrec;
+ H5_CHECKED_ASSIGN(right_moved_nrec, hssize_t, moved_nrec, hsize_t)
} /* end if */
/* Update number of records in child nodes */
@@ -1848,7 +1850,7 @@ H5B2_protect_leaf(H5B2_hdr_t *hdr, hid_t dxpl_id, haddr_t addr, unsigned nrec,
/* Set up user data for callback */
udata.f = hdr->f;
udata.hdr = hdr;
- H5_ASSIGN_OVERFLOW(/* To: */ udata.nrec, /* From: */ nrec, /* From: */ unsigned, /* To: */ uint16_t)
+ H5_CHECKED_ASSIGN(udata.nrec, uint16_t, nrec, unsigned)
/* Protect the leaf node */
if(NULL == (ret_value = (H5B2_leaf_t *)H5AC_protect(hdr->f, dxpl_id, H5AC_BT2_LEAF, addr, &udata, rw)))
@@ -1968,8 +1970,8 @@ H5B2_protect_internal(H5B2_hdr_t *hdr, hid_t dxpl_id, haddr_t addr,
/* Set up user data for callback */
udata.f = hdr->f;
udata.hdr = hdr;
- H5_ASSIGN_OVERFLOW(/* To: */ udata.nrec, /* From: */ nrec, /* From: */ unsigned, /* To: */ uint16_t)
- H5_ASSIGN_OVERFLOW(/* To: */ udata.depth, /* From: */ depth, /* From: */ unsigned, /* To: */ uint16_t)
+ H5_CHECKED_ASSIGN(udata.nrec, uint16_t, nrec, unsigned)
+ H5_CHECKED_ASSIGN(udata.depth, uint16_t, depth, unsigned)
/* Protect the internal node */
if(NULL == (ret_value = (H5B2_internal_t *)H5AC_protect(hdr->f, dxpl_id, H5AC_BT2_INT, addr, &udata, rw)))