diff options
author | Albert Cheng <acheng@hdfgroup.org> | 1998-02-09 19:37:40 (GMT) |
---|---|---|
committer | Albert Cheng <acheng@hdfgroup.org> | 1998-02-09 19:37:40 (GMT) |
commit | 7e8e3eec42254a6988b2739b621b1412963d590c (patch) | |
tree | cc7d01adda3675d67d35c8cb2edaf7a1dc469f40 /src/H5B.c | |
parent | 35e7a062e26c1a65e571202a6fda0b475e42da00 (diff) | |
download | hdf5-7e8e3eec42254a6988b2739b621b1412963d590c.zip hdf5-7e8e3eec42254a6988b2739b621b1412963d590c.tar.gz hdf5-7e8e3eec42254a6988b2739b621b1412963d590c.tar.bz2 |
[svn-r230] Changes were actually made by Robb. I am commiting them for him
while he is visiting LLNL. I changed the default creation template
offset and length to 4. Will fix the problem later.
Changes since 19980205
----------------------
./src/H5H.c
./src/H5Hprivate.h
./src/H5O.c
./src/H5Ocont.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Olayout.c
./src/H5Oname.c
./src/H5Onull.c
./src/H5Oprivate.h
./src/H5Odspace.c
./src/H5Ostab.c
./src/debug.c
./html/H5.format.html
Added an extra 4-byte field after the heap magic number for
alignment on the DEC alpha. Changed object header message
alignment to 8-bytes.
./src/H5F.c
./src/H5Farray.c
./src/H5Ffamily.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fprivate.h
./src/H5Fsec2.c
./src/H5Fstdio.c
./src/H5Gnode.c
./src/H5O.c
./src/H5Odtype.c
./src/H5P.c
./src/H5Pprivate.h
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tpublic.h
./src/H5V.c
./src/H5detect.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/hyperslab.c
./test/istore.c
./test/th5p.c
./test/theap.c
Fixed a few irix64 warnings regarding size_t vs. int,
variables set but not used, printf formats
./config/irix64
Added `-woff 1196' to get rid of errors about __vfork() being
implicitly defined in a system header file.
./src/H5B.c
Fixed a stack alignment problem.
Diffstat (limited to 'src/H5B.c')
-rw-r--r-- | src/H5B.c | 25 |
1 files changed, 16 insertions, 9 deletions
@@ -752,14 +752,21 @@ herr_t H5B_insert(H5F_t *f, const H5B_class_t *type, const haddr_t *addr, void *udata) { - uint8 lt_key[1024], md_key[1024], rt_key[1024]; - hbool_t lt_key_changed = FALSE, rt_key_changed = FALSE; - haddr_t child, old_root; - intn level; - H5B_t *bt; - size_t size; - uint8 *buf; - H5B_ins_t my_ins = H5B_INS_ERROR; + /* + * These are defined this way to satisfy alignment constraints. + */ + uint64 _lt_key[128], _md_key[128], _rt_key[128]; + uint8 *lt_key=(uint8*)_lt_key; + uint8 *md_key=(uint8*)_md_key; + uint8 *rt_key=(uint8*)_rt_key; + + hbool_t lt_key_changed = FALSE, rt_key_changed = FALSE; + haddr_t child, old_root; + intn level; + H5B_t *bt; + size_t size; + uint8 *buf; + H5B_ins_t my_ins = H5B_INS_ERROR; FUNC_ENTER(H5B_insert, FAIL); @@ -768,7 +775,7 @@ H5B_insert(H5F_t *f, const H5B_class_t *type, const haddr_t *addr, */ assert(f); assert(type); - assert(type->sizeof_nkey <= sizeof lt_key); + assert(type->sizeof_nkey <= sizeof _lt_key); assert(addr && H5F_addr_defined(addr)); if ((my_ins = H5B_insert_helper(f, addr, type, lt_key, <_key_changed, |