summaryrefslogtreecommitdiffstats
path: root/src/H5Oalloc.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2010-04-27 22:40:05 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2010-04-27 22:40:05 (GMT)
commit2ad138dbb941e02c5811f0962d3a0ca6f01aa7f3 (patch)
treee9c2128e6cc2cc90b73f53445e95288fe1879a07 /src/H5Oalloc.c
parent53f5793d38fe137cd32fec38f8686bd21452d46f (diff)
downloadhdf5-2ad138dbb941e02c5811f0962d3a0ca6f01aa7f3.zip
hdf5-2ad138dbb941e02c5811f0962d3a0ca6f01aa7f3.tar.gz
hdf5-2ad138dbb941e02c5811f0962d3a0ca6f01aa7f3.tar.bz2
[svn-r18652] Description:
Bring r18650 from trunk to 1.8 branch: Bring back various minor tweaks & cleanups from the revise_chunks branch. Tested on: FreeBSD/32 6.3 (duty) in debug mode Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode (h5committested on trunk)
Diffstat (limited to 'src/H5Oalloc.c')
-rw-r--r--src/H5Oalloc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/H5Oalloc.c b/src/H5Oalloc.c
index 6b921f2..64d2f03 100644
--- a/src/H5Oalloc.c
+++ b/src/H5Oalloc.c
@@ -1128,7 +1128,10 @@ H5O_alloc(H5F_t *f, hid_t dxpl_id, H5O_t *oh, const H5O_msg_class_t *type,
HDassert(mesg);
/* Compute the size needed to store the message in the object header */
- if((raw_size = (type->raw_size)(f, FALSE, mesg)) >= H5O_MESG_MAX_SIZE)
+ raw_size = (type->raw_size)(f, FALSE, mesg);
+ if(0 == raw_size)
+ HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, FAIL, "can't compute object header message size")
+ if(raw_size >= H5O_MESG_MAX_SIZE)
HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, FAIL, "object header message is too large")
aligned_size = H5O_ALIGN_OH(oh, raw_size);