Purpose:
source code to generate hdf files for h4toh5 converter
Description:
Solution:
see the comments of the code. this file is handled similar with h5dumptst.c
Platforms tested:
eirene, arabica
Purpose:
bug fix
Description:
two bugs: 1. different order of conventions of sds and image in hdf4 is
considered at h4toh5image.c file.
add palette colormodel attribute and correct names of
a few attributes. see detail at:
http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.htm
2. convert hdf internal vdata structure(chunking table)
into a new hdf5 dataset.
Solution:
1. change h5 data space order for image.
h5dims[0] = edge[1]-edge[0];
h5dims[1] = start[1]-start[0];
2. at h4toh5main.c, check the vdata class name and if the
first few characters match with HDF_CHK_TBL; ignore converting
this vdata.
3. add a few attributes at h4toh5pal.c
platforms:
linux and sun 5.7(arabica)
such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and
64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
Update
Description:
Updated the code so that error messages are sent to stdout instead of
to /dev/null. Albert says that it was supposed to be doing this
anyway, so...
Also did some formatting changes.
Solution:
Changed the "2>/dev/null" to "2>&1"
Platforms tested:
Linux
Code cleanup
Description:
Cleaned the code up a bit getting rid of some warnings about "const"
being lost from passing a const char * to a function, etc.
Also force the error messages to stderr instead of simply printing
them to stdout. The same behaviour can be achieved by running h5dump
like:
h5dump ... 2>&1
however, the error reporting before this change wasn't consistent in
its use. I also made some of the error messages clearer (giving names
of the failed types and, when there's an "internal error", reporting
the line number the error occurred on so that we can debug).
Solution:
Converted to "fflush(stdout); fprintf(stderr,...);" for all error
reportings.
Platforms tested:
Linux
Improvement
Description:
The mkdir testfiles and the testing of h5dump have their stderr
redirected to /dev/null. Thus no way to see error messages when happen.
Removed the redirection
Platforms tested:
Eirene (linux).
document
Description:
Added comments in how to use the program and instructions
that the corresponding may need updates if new batch of binary
files are created.
Platforms tested:
Eye-balled only. (Just a few lines of comments.)
Purpose:
windows bug fix
Description:
need extra header files for windows
Solution:
add #ifdef win32 #endif loops
Platforms tested:
windows 2000, confirmed at eirene
Name change
Description:
Changed the names of the testh5toh4 and testh4toh5 scripts to the
"canonical" form -- testh4toh5.sh and testh5toh4.sh.
Platforms tested:
Linux
Bug fix
Description:
I dropped the boat on this one. I assigned prefix to NULL after it'd
been allocated...My bad.
Solution:
Stopped doing that.
Platforms tested:
Linux
Code cleanup
Description:
Changed so that the streaming stuff is inserted if > 1.2 version.
Also modified init_prefix function so that it's sane.
Platforms tested:
Linux
Annoying code cleanup
Description:
This code could all be on one line, but wasn't for some reason.
Solution:
Made it into one printf() call.
Platforms tested:
Linux
Code Cleanup
Description:
Cleaned up where structures were. Added comments to new functions.
Removed strcpy(prefix, "") and made it prefix = NULL; since that's
what it's doing anyway.
Platforms tested:
Linux
Bug fix
Description:
Compiler on sangamon (HP/UX 10.20) is having problems with the statement
"#ifdef 0".
Solution:
Changed statement to "#if 0" instead.
Platforms tested:
Eyeballed...
Code cleanup.
Description:
Fixed _lots_ (I mean _tons_) of warnings spit out by the gcc with the
extra warnings. Including a few show-stoppers for compression on IRIX
machines.
Solution:
Changed lots of variables' types to more sensible and consistent types,
more range-checking, more variable typecasts, etc.
Platforms tested:
FreeBSD 4.2 (hawkwind), IRIX64-64 (modi4)
New Feature
Description:
Changed the command line flags in the h5dumper so that they accept
both short and long flags. The flag syntax for some have changed
(I.e., object ids are no longer -v but -i and -header is now -H or
--header, etc.) A new function is added called get_options which can
be used for all other tools as well.
Had to change these output files to accept the correct flags.
Platforms tested:
Linux
New Feature
Description:
Changed the command line flags in the h5dumper so that they accept
both short and long flags. The flag syntax for some have changed
(I.e., object ids are no longer -v but -i and -header is now -H or
--header, etc.) A new function is added called get_options which can
be used for all other tools as well.
Platforms tested:
Linux
2000-12-28 12:03:41 Robb Matzke <matzke@llnl.gov>
* main: If the file cannot be opened then immediately try the next
argument. This prevents multiple error messages from
the same file.
Purpose:
bug fix
Description:
1. zeroing out memory before using the memory buffer
2. before wrongly using Vquerysize API of HDF4 to obtain
the real file size of record type in HDF4. Actually Vquerysize will
return the real data type size in Memory. That will cause the object
reference difference on Cray which file size is not equal memory size.
Solution:
1. using h4toh5ZeroingMemory function to zero out memory.
2. calcuating the real file size of vdata record in the converter instead of
using Vquerysize HDF4 API.
Platforms tested:
Cray J90, arabica, eirene
Purpose:
bug fix
Description:
Zeroing out all memory buffer before it is being used.
Solution:
using h4toh5ZeroMemory function
Platforms tested:
linux(eirene), arabica(sun 2.7)
Purpose:
kind of bug fix for windows
Description:
Use HDfree() instead of free() so that it will not cause exceptions on windows dll
Solution:
Platforms tested:
windows NT 4.0 and 5.0, confirmed at Linux box.
Bug Fix
Description:
Stumbled across a problem when working on the J90 h5dump problem where
I noticed that some of the output for named compound datatypes wasn't being
displayed.
Solution:
Generated correct DDL files.
Platforms tested:
FreeBSD 4.2 (hawkwind) & Cray J90 (killeen)
Bug Fix
Description:
Stumbled across a problem when working on the J90 h5dump problem where
I noticed that some of the output for named compound datatypes wasn't being
displayed.
Solution:
Corrected output to display missing information.
Platforms tested:
FreeBSD 4.2 (hawkwind) & Cray J90 (killeen)
Purpose:
a bug fix for windows
Description:
ignore checking the permission of file and directory on windows
Solution:
using ifndef WIN32 endif to ignore checking this feature.
Will find how windows deal with file checking stuff later.
Platforms tested:
WIN 2000, and confirmed at eirene(Linux)
Purpose:
turn off "checking file and directory permission right" on windows platform
Description:
Adding #ifndef WIN32 #endif block at the corresponding test-file and test-dir functions.
Solution:
See above.
Platforms tested:
Win NT 4.0,5.0; and confirm the result the same on eirene and arabica
Bug Fix.
Description:
Attributes whose datatype was an object or dataset region reference weren't
dumping correctly.
Solution:
Pass along attribute ID to the code which prints the attributes, so the
reference types can be dereferenced and printed.
Platforms tested:
FreeBSD 4.2 (hawkwind) & IRIX64 6.5 (modi4)
Following up on added tests.
Description:
Added the code to generate the vldata and array test files added into
the h5dump test suite recently. This doesn't have any affect on the
library or tools, it's just for future reference.
Platforms tested:
FreeBSD 4.2 (hawkwind)
Purpose:
bug fix (zeroing memory for memory allocating for the name of dimensional list)
Description:
At modi4, test failed due to garbage read for name of dimensional list.
Solution:
zeroing out memory before writing the name.
Platforms tested:
modi4, eirene(Linux)
Code cleanup/bug fix
Description:
Variable length datatypes were leaking memory when being dumped.
Solution:
Reclaim the VL data after each element has been dumped out.
Platforms tested:
FreeBSD 4.2 (hawkwind) & Solaris 2.6 (baldric)
Re-enabling features.
Description:
Re-add the tests which had been core-dumping on a couple of platforms, now
that the underlying bug is fixed.
Platforms tested:
FreeBSD 4.2 (hawkwind) & Solaris 2.6 (baldric)
Bug fix.
Description:
Data dumping routines weren't correctly handling scalar dataspaces when
dumping them. Under some circumstances, it would get into infinite loops.
Solution:
Small patches to avoid problems when the number of dimensions is zero.
Platforms tested:
FreeBSD 4.2 (hawkwind)
Bug workaround
Description:
tarray4.h5 and tdvltypes4.h5 are causing core dumps on modi4
Solution:
Commented out those tests for now. I'll take a look at them after the code
freeze for the beta-release is finished.
Platforms tested:
O2K (modi4)
Bug fixes and misc. code fixing.
Description:
Updated to reflect current DDL document. Also changed VL data to be able
to be able also dump VL data of any other datatype.
Platforms tested:
FreeBSD 4.1.1 (hawkwind)
Bug fix
Description:
The code for determining what a string should print out if it was
declared as H5T_STR_NULLTERM (C strings), H5T_STR_SPACEPAD
(Fortran strings), or H5T_STR_NULLPAD (print null characters to
the end of the line) was mucked. A user had a problem with it and
suggested a change, but the change didn't seem to work properly.
Also, if the string was H5T_STR_SPACEPAD, it could have stopped
when encountering a NULL even if it hadn't gotten to the end of
the string.
Solution:
Reworked the code to make it more understandable what's happening
and to add in support for H5T_STR_SPACEPAD which may have been
missing before.
Platforms tested:
Linux