diff options
author | Neil Fortner <nfortne2@hdfgroup.org> | 2008-08-11 15:18:54 (GMT) |
---|---|---|
committer | Neil Fortner <nfortne2@hdfgroup.org> | 2008-08-11 15:18:54 (GMT) |
commit | f040f990a065db070a83e3217c209a83e204d6ca (patch) | |
tree | fc5d0086189dfb23a1c30f88b66ccf32cdbb550c /src/H5Ofill.c | |
parent | 2df9af6ae8fd7bf4658e702b3e5046382dc5a852 (diff) | |
download | hdf5-f040f990a065db070a83e3217c209a83e204d6ca.zip hdf5-f040f990a065db070a83e3217c209a83e204d6ca.tar.gz hdf5-f040f990a065db070a83e3217c209a83e204d6ca.tar.bz2 |
[svn-r15459] Purpose: Modify the library to take the proper action when files with incorrect
datatype versions are encountered.
Description: The library now recognizes some problems with datatype versions in
H5O_decode_helper(), and, if not performing strict format checks, automatically
corrects them. Framework added for other message decode routines to
automatically correct file errors. Datatype version information added to
h5debug. Resolves bz#1236, 1266. Test files with incorrect datatype versions
corrected.
Tested: kagiso, smirom, linew (h5committest)
Diffstat (limited to 'src/H5Ofill.c')
-rw-r--r-- | src/H5Ofill.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/H5Ofill.c b/src/H5Ofill.c index 1335274..fccf430 100644 --- a/src/H5Ofill.c +++ b/src/H5Ofill.c @@ -33,10 +33,12 @@ #include "H5Sprivate.h" /* Dataspaces */ -static void *H5O_fill_old_decode(H5F_t *f, hid_t dxpl_id, unsigned mesg_flags, const uint8_t *p); +static void *H5O_fill_old_decode(H5F_t *f, hid_t dxpl_id, unsigned mesg_flags, + unsigned *ioflags, const uint8_t *p); static herr_t H5O_fill_old_encode(H5F_t *f, uint8_t *p, const void *_mesg); static size_t H5O_fill_old_size(const H5F_t *f, const void *_mesg); -static void *H5O_fill_new_decode(H5F_t *f, hid_t dxpl_id, unsigned mesg_flags, const uint8_t *p); +static void *H5O_fill_new_decode(H5F_t *f, hid_t dxpl_id, unsigned mesg_flags, + unsigned *ioflags, const uint8_t *p); static herr_t H5O_fill_new_encode(H5F_t *f, uint8_t *p, const void *_mesg); static size_t H5O_fill_new_size(const H5F_t *f, const void *_mesg); static void *H5O_fill_copy(const void *_mesg, void *_dest); @@ -181,7 +183,7 @@ H5FL_BLK_EXTERN(type_conv); */ static void * H5O_fill_new_decode(H5F_t UNUSED *f, hid_t UNUSED dxpl_id, unsigned UNUSED mesg_flags, - const uint8_t *p) + unsigned UNUSED *ioflags, const uint8_t *p) { H5O_fill_t *fill = NULL; void *ret_value; @@ -295,7 +297,7 @@ done: */ static void * H5O_fill_old_decode(H5F_t UNUSED *f, hid_t UNUSED dxpl_id, unsigned UNUSED mesg_flags, - const uint8_t *p) + unsigned UNUSED *ioflags, const uint8_t *p) { H5O_fill_t *fill = NULL; /* Decoded fill value message */ void *ret_value; /* Return value */ |