diff options
author | Neil Fortner <nfortne2@hdfgroup.org> | 2008-08-11 15:16:34 (GMT) |
---|---|---|
committer | Neil Fortner <nfortne2@hdfgroup.org> | 2008-08-11 15:16:34 (GMT) |
commit | 4f61812180385bb969fee33eece609180cab4866 (patch) | |
tree | bf907a614a6d65c339888097281d1d32409b1011 /tools | |
parent | 9474f434a37ee313be94b0388af4322ecdace648 (diff) | |
download | hdf5-4f61812180385bb969fee33eece609180cab4866.zip hdf5-4f61812180385bb969fee33eece609180cab4866.tar.gz hdf5-4f61812180385bb969fee33eece609180cab4866.tar.bz2 |
[svn-r15458] Purpose: Modify the library to take the proper action when files with incorrectinactive/jpeg_converter
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.
Tested: kagiso, smirom, linew (h5committest)
Diffstat (limited to 'tools')
-rw-r--r-- | tools/h5repack/testfiles/h5repack_attr.h5 | bin | 20056 -> 20056 bytes | |||
-rw-r--r-- | tools/h5repack/testfiles/h5repack_objs.h5 | bin | 19589 -> 19589 bytes | |||
-rw-r--r-- | tools/lib/h5trav.c | 17 | ||||
-rw-r--r-- | tools/testfiles/tarray1.h5 | bin | 2112 -> 2112 bytes | |||
-rw-r--r-- | tools/testfiles/tarray2.h5 | bin | 3008 -> 3008 bytes | |||
-rw-r--r-- | tools/testfiles/tarray3.h5 | bin | 3200 -> 3200 bytes | |||
-rw-r--r-- | tools/testfiles/tarray4.h5 | bin | 2176 -> 2176 bytes | |||
-rw-r--r-- | tools/testfiles/tarray5.h5 | bin | 2368 -> 2368 bytes | |||
-rw-r--r-- | tools/testfiles/tarray6.h5 | bin | 6400 -> 6400 bytes | |||
-rw-r--r-- | tools/testfiles/tarray7.h5 | bin | 6400 -> 6400 bytes | |||
-rw-r--r-- | tools/testfiles/tattr.h5 | bin | 3024 -> 3024 bytes | |||
-rw-r--r-- | tools/testfiles/tattr2.h5 | bin | 33840 -> 33840 bytes | |||
-rw-r--r-- | tools/testfiles/tbitfields.h5 | bin | 2704 -> 2704 bytes | |||
-rw-r--r-- | tools/testfiles/tchar.h5 | bin | 2356 -> 2356 bytes | |||
-rw-r--r-- | tools/testfiles/tcompound.h5 | bin | 8192 -> 8192 bytes | |||
-rw-r--r-- | tools/testfiles/tcompound2.h5 | bin | 13640 -> 13640 bytes | |||
-rw-r--r-- | tools/testfiles/tcompound_complex.h5 | bin | 8192 -> 8192 bytes | |||
-rw-r--r-- | tools/testfiles/tdatareg.h5 | bin | 5652 -> 5652 bytes | |||
-rw-r--r-- | tools/testfiles/tdset.h5 | bin | 7648 -> 7648 bytes | |||
-rw-r--r-- | tools/testfiles/tdset2.h5 | bin | 9936 -> 9936 bytes | |||
-rw-r--r-- | tools/testfiles/tempty.h5 | bin | 4304 -> 4304 bytes | |||
-rw-r--r-- | tools/testfiles/tenum.h5 | bin | 2128 -> 2128 bytes | |||
-rw-r--r-- | tools/testfiles/tfilters.h5 | bin | 46272 -> 46272 bytes | |||
-rw-r--r-- | tools/testfiles/tfvalues.h5 | bin | 9552 -> 9552 bytes | |||
-rw-r--r-- | tools/testfiles/tgroup.h5 | bin | 11096 -> 11096 bytes | |||
-rw-r--r-- | tools/testfiles/tgrp_comments.h5 | bin | 14336 -> 14336 bytes | |||
-rw-r--r-- | tools/testfiles/tlarge_objname.h5 | bin | 40008 -> 40008 bytes | |||
-rw-r--r-- | tools/testfiles/tlonglinks.h5 | bin | 203168 -> 203168 bytes | |||
-rw-r--r-- | tools/testfiles/tloop.h5 | bin | 3168 -> 3168 bytes | |||
-rw-r--r-- | tools/testfiles/tloop2.h5 | bin | 3168 -> 3168 bytes | |||
-rw-r--r-- | tools/testfiles/tmany.h5 | bin | 18536 -> 18536 bytes | |||
-rw-r--r-- | tools/testfiles/tname-amp.h5 | bin | 2880 -> 2880 bytes | |||
-rw-r--r-- | tools/testfiles/tname-apos.h5 | bin | 2880 -> 2880 bytes | |||
-rw-r--r-- | tools/testfiles/tname-gt.h5 | bin | 2880 -> 2880 bytes | |||
-rw-r--r-- | tools/testfiles/tname-lt.h5 | bin | 2880 -> 2880 bytes | |||
-rw-r--r-- | tools/testfiles/tname-quot.h5 | bin | 2880 -> 2880 bytes | |||
-rw-r--r-- | tools/testfiles/tname-sp.h5 | bin | 2880 -> 2880 bytes | |||
-rw-r--r-- | tools/testfiles/tnestedcomp.h5 | bin | 2072 -> 2072 bytes | |||
-rw-r--r-- | tools/testfiles/tnodata.h5 | bin | 1412 -> 1412 bytes | |||
-rw-r--r-- | tools/testfiles/tnullspace.h5 | bin | 3624 -> 3624 bytes | |||
-rw-r--r-- | tools/testfiles/tobjref.h5 | bin | 2900 -> 2900 bytes | |||
-rw-r--r-- | tools/testfiles/topaque.h5 | bin | 1744 -> 1744 bytes | |||
-rw-r--r-- | tools/testfiles/tref-escapes-at.h5 | bin | 5849 -> 5849 bytes | |||
-rw-r--r-- | tools/testfiles/tref-escapes.h5 | bin | 5536 -> 5536 bytes | |||
-rw-r--r-- | tools/testfiles/tref.h5 | bin | 3004 -> 3004 bytes | |||
-rw-r--r-- | tools/testfiles/tsaf.h5 | bin | 769444 -> 769444 bytes | |||
-rw-r--r-- | tools/testfiles/tslink.h5 | bin | 1168 -> 1168 bytes | |||
-rw-r--r-- | tools/testfiles/tstr.h5 | bin | 15608 -> 15608 bytes | |||
-rw-r--r-- | tools/testfiles/tstr2.h5 | bin | 11096 -> 11096 bytes | |||
-rw-r--r-- | tools/testfiles/tstr3.h5 | bin | 8736 -> 8736 bytes | |||
-rw-r--r-- | tools/testfiles/tstring-at.h5 | bin | 1672 -> 1672 bytes | |||
-rw-r--r-- | tools/testfiles/tstring.h5 | bin | 2160 -> 2160 bytes | |||
-rw-r--r-- | tools/testfiles/tvldtypes1.h5 | bin | 8336 -> 8336 bytes | |||
-rw-r--r-- | tools/testfiles/tvldtypes2.h5 | bin | 6208 -> 6208 bytes | |||
-rw-r--r-- | tools/testfiles/tvldtypes3.h5 | bin | 6240 -> 6240 bytes | |||
-rw-r--r-- | tools/testfiles/tvldtypes4.h5 | bin | 8192 -> 8192 bytes | |||
-rw-r--r-- | tools/testfiles/tvldtypes5.h5 | bin | 8192 -> 8192 bytes | |||
-rw-r--r-- | tools/testfiles/tvlstr.h5 | bin | 8192 -> 8192 bytes |
58 files changed, 14 insertions, 3 deletions
diff --git a/tools/h5repack/testfiles/h5repack_attr.h5 b/tools/h5repack/testfiles/h5repack_attr.h5 Binary files differindex 70ad02d..fe066db 100644 --- a/tools/h5repack/testfiles/h5repack_attr.h5 +++ b/tools/h5repack/testfiles/h5repack_attr.h5 diff --git a/tools/h5repack/testfiles/h5repack_objs.h5 b/tools/h5repack/testfiles/h5repack_objs.h5 Binary files differindex 199adc5..0a0c041 100644 --- a/tools/h5repack/testfiles/h5repack_objs.h5 +++ b/tools/h5repack/testfiles/h5repack_objs.h5 diff --git a/tools/lib/h5trav.c b/tools/lib/h5trav.c index 0ed6a30..bb8014d 100644 --- a/tools/lib/h5trav.c +++ b/tools/lib/h5trav.c @@ -159,8 +159,11 @@ traverse_cb(hid_t loc_id, const char *path, const H5L_info_t *linfo, H5O_info_t oinfo; /* Get information about the object */ - if(H5Oget_info_by_name(loc_id, path, &oinfo, H5P_DEFAULT) < 0) + if(H5Oget_info_by_name(loc_id, path, &oinfo, H5P_DEFAULT) < 0) { + if(new_name) + HDfree(new_name); return(H5_ITER_ERROR); + } /* If the object has multiple links, add it to the list of addresses * already visited, if it isn't there already @@ -171,12 +174,20 @@ traverse_cb(hid_t loc_id, const char *path, const H5L_info_t *linfo, /* Make 'visit object' callback */ if(udata->visitor->visit_obj) - (*udata->visitor->visit_obj)(full_name, &oinfo, already_visited, udata->visitor->udata); + if((*udata->visitor->visit_obj)(full_name, &oinfo, already_visited, udata->visitor->udata) < 0) { + if(new_name) + HDfree(new_name); + return(H5_ITER_ERROR); + } } /* end if */ else { /* Make 'visit link' callback */ if(udata->visitor->visit_lnk) - (*udata->visitor->visit_lnk)(full_name, linfo, udata->visitor->udata); + if((*udata->visitor->visit_lnk)(full_name, linfo, udata->visitor->udata) < 0) { + if(new_name) + HDfree(new_name); + return(H5_ITER_ERROR); + } } /* end else */ if(new_name) diff --git a/tools/testfiles/tarray1.h5 b/tools/testfiles/tarray1.h5 Binary files differindex d62d752..90371f2 100644 --- a/tools/testfiles/tarray1.h5 +++ b/tools/testfiles/tarray1.h5 diff --git a/tools/testfiles/tarray2.h5 b/tools/testfiles/tarray2.h5 Binary files differindex 5582c5a..e2e53e8 100644 --- a/tools/testfiles/tarray2.h5 +++ b/tools/testfiles/tarray2.h5 diff --git a/tools/testfiles/tarray3.h5 b/tools/testfiles/tarray3.h5 Binary files differindex 0c75d79..580d846 100644 --- a/tools/testfiles/tarray3.h5 +++ b/tools/testfiles/tarray3.h5 diff --git a/tools/testfiles/tarray4.h5 b/tools/testfiles/tarray4.h5 Binary files differindex c2811d2..b34efb8 100644 --- a/tools/testfiles/tarray4.h5 +++ b/tools/testfiles/tarray4.h5 diff --git a/tools/testfiles/tarray5.h5 b/tools/testfiles/tarray5.h5 Binary files differindex 8cb45b8..55ebf46 100644 --- a/tools/testfiles/tarray5.h5 +++ b/tools/testfiles/tarray5.h5 diff --git a/tools/testfiles/tarray6.h5 b/tools/testfiles/tarray6.h5 Binary files differindex 5cf95cf..b4af19b 100644 --- a/tools/testfiles/tarray6.h5 +++ b/tools/testfiles/tarray6.h5 diff --git a/tools/testfiles/tarray7.h5 b/tools/testfiles/tarray7.h5 Binary files differindex 0b49f04..74089ea 100644 --- a/tools/testfiles/tarray7.h5 +++ b/tools/testfiles/tarray7.h5 diff --git a/tools/testfiles/tattr.h5 b/tools/testfiles/tattr.h5 Binary files differindex 578a20a..fd14b58 100644 --- a/tools/testfiles/tattr.h5 +++ b/tools/testfiles/tattr.h5 diff --git a/tools/testfiles/tattr2.h5 b/tools/testfiles/tattr2.h5 Binary files differindex c7e3359..c40f3f7 100644 --- a/tools/testfiles/tattr2.h5 +++ b/tools/testfiles/tattr2.h5 diff --git a/tools/testfiles/tbitfields.h5 b/tools/testfiles/tbitfields.h5 Binary files differindex c14b1f0..11087f0 100644 --- a/tools/testfiles/tbitfields.h5 +++ b/tools/testfiles/tbitfields.h5 diff --git a/tools/testfiles/tchar.h5 b/tools/testfiles/tchar.h5 Binary files differindex 03bd6d5..4d23ea9 100644 --- a/tools/testfiles/tchar.h5 +++ b/tools/testfiles/tchar.h5 diff --git a/tools/testfiles/tcompound.h5 b/tools/testfiles/tcompound.h5 Binary files differindex 37ddd27..d1ec650 100644 --- a/tools/testfiles/tcompound.h5 +++ b/tools/testfiles/tcompound.h5 diff --git a/tools/testfiles/tcompound2.h5 b/tools/testfiles/tcompound2.h5 Binary files differindex 20577a6..98e80bd 100644 --- a/tools/testfiles/tcompound2.h5 +++ b/tools/testfiles/tcompound2.h5 diff --git a/tools/testfiles/tcompound_complex.h5 b/tools/testfiles/tcompound_complex.h5 Binary files differindex 5eed316..5c6274f 100644 --- a/tools/testfiles/tcompound_complex.h5 +++ b/tools/testfiles/tcompound_complex.h5 diff --git a/tools/testfiles/tdatareg.h5 b/tools/testfiles/tdatareg.h5 Binary files differindex 1f911b1..62a889f 100644 --- a/tools/testfiles/tdatareg.h5 +++ b/tools/testfiles/tdatareg.h5 diff --git a/tools/testfiles/tdset.h5 b/tools/testfiles/tdset.h5 Binary files differindex 3cb9a69..71dcb91 100644 --- a/tools/testfiles/tdset.h5 +++ b/tools/testfiles/tdset.h5 diff --git a/tools/testfiles/tdset2.h5 b/tools/testfiles/tdset2.h5 Binary files differindex 7681231..5e17cfd 100644 --- a/tools/testfiles/tdset2.h5 +++ b/tools/testfiles/tdset2.h5 diff --git a/tools/testfiles/tempty.h5 b/tools/testfiles/tempty.h5 Binary files differindex ad4c2c4..d7d903f 100644 --- a/tools/testfiles/tempty.h5 +++ b/tools/testfiles/tempty.h5 diff --git a/tools/testfiles/tenum.h5 b/tools/testfiles/tenum.h5 Binary files differindex 667be98..b1300d8 100644 --- a/tools/testfiles/tenum.h5 +++ b/tools/testfiles/tenum.h5 diff --git a/tools/testfiles/tfilters.h5 b/tools/testfiles/tfilters.h5 Binary files differindex 5b5f4bb..c28b1b1 100644 --- a/tools/testfiles/tfilters.h5 +++ b/tools/testfiles/tfilters.h5 diff --git a/tools/testfiles/tfvalues.h5 b/tools/testfiles/tfvalues.h5 Binary files differindex cb3172c..a6af958 100644 --- a/tools/testfiles/tfvalues.h5 +++ b/tools/testfiles/tfvalues.h5 diff --git a/tools/testfiles/tgroup.h5 b/tools/testfiles/tgroup.h5 Binary files differindex 13e10b4..565fb67 100644 --- a/tools/testfiles/tgroup.h5 +++ b/tools/testfiles/tgroup.h5 diff --git a/tools/testfiles/tgrp_comments.h5 b/tools/testfiles/tgrp_comments.h5 Binary files differindex b72edcc..70c7cce 100644 --- a/tools/testfiles/tgrp_comments.h5 +++ b/tools/testfiles/tgrp_comments.h5 diff --git a/tools/testfiles/tlarge_objname.h5 b/tools/testfiles/tlarge_objname.h5 Binary files differindex 0c59387..707d7b6 100644 --- a/tools/testfiles/tlarge_objname.h5 +++ b/tools/testfiles/tlarge_objname.h5 diff --git a/tools/testfiles/tlonglinks.h5 b/tools/testfiles/tlonglinks.h5 Binary files differindex 98ab61c..f54e5f5 100644 --- a/tools/testfiles/tlonglinks.h5 +++ b/tools/testfiles/tlonglinks.h5 diff --git a/tools/testfiles/tloop.h5 b/tools/testfiles/tloop.h5 Binary files differindex 12390fd..d7a2f47 100644 --- a/tools/testfiles/tloop.h5 +++ b/tools/testfiles/tloop.h5 diff --git a/tools/testfiles/tloop2.h5 b/tools/testfiles/tloop2.h5 Binary files differindex c54411e..995bfab 100644 --- a/tools/testfiles/tloop2.h5 +++ b/tools/testfiles/tloop2.h5 diff --git a/tools/testfiles/tmany.h5 b/tools/testfiles/tmany.h5 Binary files differindex 10e29d6..1f2bbaa 100644 --- a/tools/testfiles/tmany.h5 +++ b/tools/testfiles/tmany.h5 diff --git a/tools/testfiles/tname-amp.h5 b/tools/testfiles/tname-amp.h5 Binary files differindex eeaeb67..27ab521 100644 --- a/tools/testfiles/tname-amp.h5 +++ b/tools/testfiles/tname-amp.h5 diff --git a/tools/testfiles/tname-apos.h5 b/tools/testfiles/tname-apos.h5 Binary files differindex c86d2dd..42d0fc3 100644 --- a/tools/testfiles/tname-apos.h5 +++ b/tools/testfiles/tname-apos.h5 diff --git a/tools/testfiles/tname-gt.h5 b/tools/testfiles/tname-gt.h5 Binary files differindex b852be8..fabd154 100644 --- a/tools/testfiles/tname-gt.h5 +++ b/tools/testfiles/tname-gt.h5 diff --git a/tools/testfiles/tname-lt.h5 b/tools/testfiles/tname-lt.h5 Binary files differindex 698cf82..6b13375 100644 --- a/tools/testfiles/tname-lt.h5 +++ b/tools/testfiles/tname-lt.h5 diff --git a/tools/testfiles/tname-quot.h5 b/tools/testfiles/tname-quot.h5 Binary files differindex be7f448..eb8d6cc 100644 --- a/tools/testfiles/tname-quot.h5 +++ b/tools/testfiles/tname-quot.h5 diff --git a/tools/testfiles/tname-sp.h5 b/tools/testfiles/tname-sp.h5 Binary files differindex f21d79f..0201efd 100644 --- a/tools/testfiles/tname-sp.h5 +++ b/tools/testfiles/tname-sp.h5 diff --git a/tools/testfiles/tnestedcomp.h5 b/tools/testfiles/tnestedcomp.h5 Binary files differindex 47d2f68..b777ee3 100644 --- a/tools/testfiles/tnestedcomp.h5 +++ b/tools/testfiles/tnestedcomp.h5 diff --git a/tools/testfiles/tnodata.h5 b/tools/testfiles/tnodata.h5 Binary files differindex baaa3fb..8e0a89d 100644 --- a/tools/testfiles/tnodata.h5 +++ b/tools/testfiles/tnodata.h5 diff --git a/tools/testfiles/tnullspace.h5 b/tools/testfiles/tnullspace.h5 Binary files differindex 54242ca..b5dac5d 100644 --- a/tools/testfiles/tnullspace.h5 +++ b/tools/testfiles/tnullspace.h5 diff --git a/tools/testfiles/tobjref.h5 b/tools/testfiles/tobjref.h5 Binary files differindex 5b6b43b..ef42ff3 100644 --- a/tools/testfiles/tobjref.h5 +++ b/tools/testfiles/tobjref.h5 diff --git a/tools/testfiles/topaque.h5 b/tools/testfiles/topaque.h5 Binary files differindex 284a16d..d56b594 100644 --- a/tools/testfiles/topaque.h5 +++ b/tools/testfiles/topaque.h5 diff --git a/tools/testfiles/tref-escapes-at.h5 b/tools/testfiles/tref-escapes-at.h5 Binary files differindex c03c201..641513c 100644 --- a/tools/testfiles/tref-escapes-at.h5 +++ b/tools/testfiles/tref-escapes-at.h5 diff --git a/tools/testfiles/tref-escapes.h5 b/tools/testfiles/tref-escapes.h5 Binary files differindex b9bff90..6c7638b 100644 --- a/tools/testfiles/tref-escapes.h5 +++ b/tools/testfiles/tref-escapes.h5 diff --git a/tools/testfiles/tref.h5 b/tools/testfiles/tref.h5 Binary files differindex 12453be..73b4be5 100644 --- a/tools/testfiles/tref.h5 +++ b/tools/testfiles/tref.h5 diff --git a/tools/testfiles/tsaf.h5 b/tools/testfiles/tsaf.h5 Binary files differindex 88c1d72..c84c5b6 100644 --- a/tools/testfiles/tsaf.h5 +++ b/tools/testfiles/tsaf.h5 diff --git a/tools/testfiles/tslink.h5 b/tools/testfiles/tslink.h5 Binary files differindex c6b1b2d..753b62d 100644 --- a/tools/testfiles/tslink.h5 +++ b/tools/testfiles/tslink.h5 diff --git a/tools/testfiles/tstr.h5 b/tools/testfiles/tstr.h5 Binary files differindex 8539841..af5384f 100644 --- a/tools/testfiles/tstr.h5 +++ b/tools/testfiles/tstr.h5 diff --git a/tools/testfiles/tstr2.h5 b/tools/testfiles/tstr2.h5 Binary files differindex de168e8..d3b1588 100644 --- a/tools/testfiles/tstr2.h5 +++ b/tools/testfiles/tstr2.h5 diff --git a/tools/testfiles/tstr3.h5 b/tools/testfiles/tstr3.h5 Binary files differindex 5dee4c5..9f9112f 100644 --- a/tools/testfiles/tstr3.h5 +++ b/tools/testfiles/tstr3.h5 diff --git a/tools/testfiles/tstring-at.h5 b/tools/testfiles/tstring-at.h5 Binary files differindex c166dea..aa17960 100644 --- a/tools/testfiles/tstring-at.h5 +++ b/tools/testfiles/tstring-at.h5 diff --git a/tools/testfiles/tstring.h5 b/tools/testfiles/tstring.h5 Binary files differindex 41fb96d..667fe78 100644 --- a/tools/testfiles/tstring.h5 +++ b/tools/testfiles/tstring.h5 diff --git a/tools/testfiles/tvldtypes1.h5 b/tools/testfiles/tvldtypes1.h5 Binary files differindex df31249..b5b2bd7 100644 --- a/tools/testfiles/tvldtypes1.h5 +++ b/tools/testfiles/tvldtypes1.h5 diff --git a/tools/testfiles/tvldtypes2.h5 b/tools/testfiles/tvldtypes2.h5 Binary files differindex edb3e77..65bf63f 100644 --- a/tools/testfiles/tvldtypes2.h5 +++ b/tools/testfiles/tvldtypes2.h5 diff --git a/tools/testfiles/tvldtypes3.h5 b/tools/testfiles/tvldtypes3.h5 Binary files differindex e2e1697..dd4aca7 100644 --- a/tools/testfiles/tvldtypes3.h5 +++ b/tools/testfiles/tvldtypes3.h5 diff --git a/tools/testfiles/tvldtypes4.h5 b/tools/testfiles/tvldtypes4.h5 Binary files differindex ae5f967..70dc73e 100644 --- a/tools/testfiles/tvldtypes4.h5 +++ b/tools/testfiles/tvldtypes4.h5 diff --git a/tools/testfiles/tvldtypes5.h5 b/tools/testfiles/tvldtypes5.h5 Binary files differindex 702e45b..776c020 100644 --- a/tools/testfiles/tvldtypes5.h5 +++ b/tools/testfiles/tvldtypes5.h5 diff --git a/tools/testfiles/tvlstr.h5 b/tools/testfiles/tvlstr.h5 Binary files differindex c00defc..769d811 100644 --- a/tools/testfiles/tvlstr.h5 +++ b/tools/testfiles/tvlstr.h5 |