Commit Graph

847 Commits

Author SHA1 Message Date
Allen Byrne
5a4357e4fb [svn-r25570] UNDO:Added option to build tools static when building shared libraries. This will prevent 'dll' being appended to the tool name on windows. See HDFFV-8292.
Windows DLL linkage problem because of defines needed.

Tested: local linux
2014-09-03 14:04:18 -05:00
Allen Byrne
c23f3a7ea5 [svn-r25569] Added option to build tools static when building shared libraries. This will prevent 'dll' being appended to the tool name on windows. See HDFFV-8292.
Tested: local linux
2014-09-03 12:12:52 -05:00
Mohamad Chaarawi
88fb6b1374 [svn-r25531] remove use of C99 PRI that failed on windows in dtypes.c
fix bugs where hid_t were assumed to be 32 bit ints or herr_t.
2014-08-11 14:13:45 -05:00
Quincey Koziol
33ea1ada24 [svn-r25496] Description:
Merge 64-bit ID changes from branch to trunk.  (Plus a few minor cleanups
that aren't on the branch)

Tested on:
    Mac OSX/64 10.9.4 (amazon) w/C++ & FORTRAN
    (h5committested on branch already for a week)
2014-07-30 15:55:14 -05:00
Mohamad Chaarawi
06ef71a37f [svn-r25397] - remove configure checks for MPI_File_get_size and Big
MPI_File_set_size as they are supported by most MPI implementations.
- fix bug in t_mpi.c (HDFFV-8856)
2014-07-07 13:22:48 -05:00
Quincey Koziol
60f8a4100e [svn-r25215] Description:
Bring changes from Coverity branch back to trunk:

r20914:
    Use HDstrncpy and HDstrncat! --gh

20915:
    Use HDstrncpy and HDstrncat! --gh

Tested on:
    Mac OSX/64 10.9.3 (amazon) w/gcc 4.9.0, C++, FORTRAN & parallel
    (too minor to require h5committest)
2014-05-25 00:55:39 -05:00
Quincey Koziol
a613b70f93 [svn-r25197] Description:
Bring changes from hdf5_1_8_coverity branch back to trunk:

r20878:
    Issue 76: Check if H5Tget_nmembers(type) fails and simply return(FALSE). Also move printf to after check.

r20880:
    Issue 192: Create ret_val var set to -1. Add out label for failures to jump to, return ret_val at bottom.

r20882:
    Fixes for coverity:
    1) bug #1679: remove dead code in test/mf.c
    2) bug #1680: remove dead code in tools/lib/h5diff_dset.c

r20883:
    Fix coverity issue 585

    Description:
    Changed variable "c" in processStrData in h5import.c to an int, to match fgetc
    return value, and removed call to feof, instead checking if c == EOF.

Tested on:
    MacOSX/64 10.9.3 (amazon) w/C++, FORTRAN & parallel
    (too minor to require h5committest)
2014-05-16 22:22:51 -05:00
Allen Byrne
21474f8eee [svn-r25188] Implement change to cmake_ext_mod config folder
Tested: local linux
2014-05-14 14:50:28 -05:00
Allen Byrne
8f57e86ab9 [svn-r25185] update cmake command name case 2014-05-12 13:14:46 -05:00
Larry Knox
c6e3e68297 [svn-r25117] Removed LT_ADD_LIBHDF5_DEPENDENCY configure conditional to roll back fix for removing rpaths from l
ib files.  The fix also removed dependencies on libhdf5, etc. when the --disable-sharedlib-rpath co
nfigure option was invoked.
Added instead configure variable hardcode_into_lib=no.  This removes rpath from lib files on Linux
and solaris machines.

Tested with h5committest on jam, koala, ostrich and platypus (cmake), and with configure option --disable-sharedlib-rpath on emu, platypus and quail.
2014-04-25 16:59:53 -05:00
Albert Cheng
3dc1e6dd38 [svn-r25081] Bug HDFFV-8625, HDFFV-8639, HDFFV-8745:
h5diff issues "unable to read attribute" error message when comparing two files

Description:
    h5diff did not handle attributes of variable length strings correctly. It created the wrong memory type if one but not both compared attributes are of the variable strings type. It ended in H5Aread() failure.

Solution:
    We decided to treat the case when one type is variable length string and the other is not as incomparable. That bypassed the above error.  We still need to figure out the proper way, if possible, to compare variable string with non-variable string types.

Tested: h5committested plus tested in Swallow (OS X 10.8).
2014-04-22 17:25:51 -05:00
Albert Cheng
9734210966 [svn-r24999] Bugfix: HDFFV-8639
h5diff segfaults with user's files

Solution:
Added a variable to indicate if real data are in the buffer and will call H5Dvlen_reclaim()
only when real data are in the buffer.

Tested: with the user provided data files and no more segmentaion fault.
Also h5committ tested.
2014-04-09 06:23:16 -05:00
Dana Robinson
d01ee66666 [svn-r24937] Adds an H5free_memory() function to the library for use with
functions that return library-allocated memory. The test and tool
code were modified to use this new function where it's appropriate.

Fixes HDFFV-7710, HDFFV-8519, and HDFFV-8551

Tested on:
    64-bit Windows 7 w/ VS2012
    32-bit LE linux w/ parallel and fortran (jam)
    32-bit LE linux w/ fortran and C++ (jam)
2014-03-31 18:35:09 -05:00
Allen Byrne
c6fe8c70b2 [svn-r24932] HDFFV-8290: Remove unnecessary $(srcdir) and use AM_CPPFLAGS instead of INCLUDES. Update automake to 1.14.1
h5committest
2014-03-31 12:07:05 -05:00
Allen Byrne
425408b5a1 [svn-r24895] Add INTERFACE properties to libs 2014-03-25 13:25:53 -05:00
Quincey Koziol
2e4302818a [svn-r24864] Description:
Remove all traces of MPI-POSIX VFD and GPFS detection/code.

    Remove remaining traces of stream VFD.

    Remove testpar/t_posix_compliant test (it's not actually verifying anything).

    Clean up H5D__mpio_opt_possible() further.

    Moved environment variable that disables MPI collective operations into
MPI-IO VFD (instead of it being in src/H5S.c).

    A few other small code cleanups.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/parallel & serial
2014-03-21 18:02:24 -05:00
Quincey Koziol
164b4c7534 [svn-r24804] Description:
Brought changes from Coverity branch back to trunk, and cleaned up misc.
other warnings & formatting issues:

r20833:
Fixed Coverity 667 and 668 with real integer overflow tests this time.

r20834:
Use HDstrncpy and HDstrncat. --gh 

r20835:
Change to use strncpy - use base_len + 1 for line 156, use HDstrlen(path) + 1 for line 159

r20836:
Fixed coverity 585 by casting output of fgetc() to a char.

r20837:
Changed sprintf calls to snprintf with size 1 less than the allocated buffer to address coverity issue #967.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/C++, FORTRAN & parallel
    (too minor to require h5committest)
2014-03-15 23:44:13 -05:00
Allen Byrne
f5689224b5 [svn-r24789] Bump up the minimum cmake version 2014-03-13 10:05:09 -05:00
Allen Byrne
a3292a77ce [svn-r24781] HDFFV-8700 -
KitWare recommendations: Change CMake commands to lower case.
Remove INCLUDE_DIRECTORIES in src for target level includes.
Change ADD_DEFINITIONS package debug defines into CMake option.
Remove -DNDEBUG
2014-03-11 16:14:57 -05:00
Quincey Koziol
1e36b5a348 [svn-r24726] Description:
Revert some earlier usage of strncpy, which was incorrect.

    Bring Coverity changes from branch back to trunk:

r20821:
    Use HDstrncpy. --gh
    (Fixed already, with strdup)

r20822:
    (Not merged, incorrect use of HDstrncpy())

r20823:
    (Not merged, incorrect use of HDstrncpy())

r20824:
    Maintenance: Bug fix: addressed CID 666.
    Value stored at *expression_len should be used in the call to
        HD5packFstring to avoid overflow (and unnecessary arithmetic
        calculation and casting) 

r20825:
    Issue 642: Added check for error and handler with print to stderr and exit.

r20826:
    Undo revision 20818, as that issue has already been fixed in the 1.8 branch
        and trunk (but not coverity branch)

r20827:
    (Not merged, incorrect use of HDstrncpy())
    
r20828:
    Use HDstrncpy. --gh
    (Corrected use of strncpy())

r20829:
    Check return of H5Lget_val(print_udata->fid, path, targbuf,
        linfo->u.val_size + 1, H5P_DEFAULT) and if error set trgbuf[0] to 0.
        Check if  H5Lunpack_elink_val(targbuf, linfo->u.val_size, NULL,
        &filename, &objname) was successful and allow print. Otherwise filename
        and objname are not created. (init those to NULL)

r20830:
    resolved coverity issues 939, 940, 941, 944, and 947.

    all were complaints about use of sprintf, and in all cases, the
    buffers used were large enough for all eventualities.

    Resolved issue by replacing calls to sprintf with calls
    to snprintf.

r20831:
    Maintenance: Addressed CID 852
    Replaced sprintf with snprintf

r20832:
    Purpose: Fix valgrind issues with hl/examples/ex_image2

    Description:
    Modified hl/examples/ex_image2 to free global "gbuf" before exit.

Tested on:
    Mac OSX/64 10.9.1 (amaon) w/C++, FORTRAN & Threadsafety
    (too minor to require h5committest)
2014-02-20 16:29:26 -05:00
Allen Byrne
b30e37ea78 [svn-r24725] HDFFV-8629: h5repack will not attempt to remove UD filters. h5repack requires a check for UD filters that also must check if the filter can be dynamically loaded. This require a change in the library that checks for this.
Tested: locally and reviewed
2014-02-20 15:21:08 -05:00
Allen Byrne
6569d7437a [svn-r24682] Add IF SHARED block around Windows PDB file generation command. 2014-02-04 10:11:36 -05:00
Quincey Koziol
2d79ba29ed [svn-r24480] Description:
Bring r24479 from 1.8 branch to trunk:

    Fix ph5diff worker command handling so it can correctly respond to
situations where there's no work to perform.  Also, a few minor code cleanups.

Tested on:
    Mac OSX/64 10.9.0 (amazon) w/parallel
    (too minor to require h5committest)
2013-11-30 13:10:36 -05:00
Larry Knox
06aa7b6641 [svn-r24285] Eliminate several "passing argument ... with different width due to prototype" warnings by casting constants to size_t where expected by string functions.
Tested on jam, koala,ostrich and platypus with h5committest.
2013-10-10 16:57:04 -05:00
Allen Byrne
4611f95d4c [svn-r24224] HDFFV-8529: Space separate define strings
Tested: h5committest
2013-09-30 11:52:03 -05:00
Larry Knox
ab239810e1 [svn-r24194] Don't add hdf5 library dependencies to lib files when --disable-sharedlib-rpath configure option is invoked. Fix for HDFFV-8276.
Tested with h5committest and on hdf-duck.
2013-09-23 20:14:24 -05:00
Allen Byrne
a8c63e28d5 [svn-r24138] Cast constants to specified type.
Cast smaller vars to larger type.
Cast calculation result to correct type.
Changed int member to hbool_t

Tested: local linux
2013-09-13 16:11:30 -05:00
Larry Knox
6b54dac504 [svn-r24115] Reduce warnings for conversions of different widths.
h5committested on jam, ostrich, koala, and platypus.
2013-09-06 17:48:28 -05:00
Quincey Koziol
5b876c929f [svn-r24101] Description:
Clean up warnings, enable new compiler warning flag(s) and bring back
changes from Coverity branch:

r20813:
Remove the dead code as listed for coverity bug #1722. h5committested.

r20814:
Issue 69: Check return value and throw error if negative return. Also free datatype id on error

r20815:
Use HDstrncpy. --gh

r20816:
Replaced one last HDstrcat call with HDstrncat to resolve coverity issue 832.

r20817:
Use HDstrncpy and HDstrncat. --gh

r20818:
Purpose: Fix valgrind issues with h5jam

Description:
Modified h5jam to free strings strdup'd in parse_command_line before exit. Note
that they may still not be freed in case of error, due to the widespread use of
exit().

r20819:
Issue 80: change loop to use int as loop index.

r20820:
Maintenance: Fixed the bug found by coverity CID 788
There were two problems with this function:
    1) it tried to unnecessary free NULL pointer
    2) it tried to allocate c_name buffer that is done by H5Pget_class_name


Tested on:
    Mac OSX 10.8.4 (amazon) w/gcc 4.8.1, C++ & FORTRAN
    (too minor to require h5committest)
2013-09-05 15:44:14 -05:00
Quincey Koziol
482a9c28e7 [svn-r24030] Description:
Clean up more compiler warnings.

Tested on:
    Mac OSX/64 10.8.4 (amazon) w/gcc, C++ & FORTRAN
    (too minor to require h5committest)
2013-08-19 17:13:15 -05:00
Quincey Koziol
453f95c192 [svn-r24011] Description:
Clean up a few warnings

Tested on:
    Mac OSX 10.8.4 (amazon) w/C++ & FORTRAN
    (too minor to require h5committest)
2013-08-15 08:24:28 -05:00
Allen Byrne
4e1695576c [svn-r23953] Update stream handling to allow binary mode - due to unjam fix.
Tested: local linux
2013-07-31 11:22:40 -05:00
Allen Byrne
ad7624ada3 [svn-r23944] Move stream functions into tools lib.
Tested: local linux
2013-07-30 12:04:23 -05:00
Albert Cheng
c2750822ff [svn-r23825] Bug HDFFV-8469: C++ comments in C code.
Found and removed two more "//" comments.

Tested: in Koala by
$ env CFLAGS="-ansi" ../hdf5/bin/buildhdf5 -fortran -cxx -config # enable fortran and cxx, configure only
$ make AM_CFLAGS=-ansi # compile all source file by setting HDF5 build CFLAGS as "-ansi" only
2013-06-26 01:25:44 -05:00
Allen Byrne
125e2a0a9d [svn-r23800] Added the HD prefix to the system functions used in the h5tools_str_replace function. 2013-06-20 17:02:17 -05:00
Allen Byrne
60cce86d0e [svn-r23796] remove commented line with c++ style 2013-06-20 10:06:14 -05:00
Allen Byrne
feb14ea872 [svn-r23745] HDFFV-8461: Add Windows /MT support
This adds the UserMacros.cmake support needed.
2013-06-10 12:46:48 -05:00
Allen Byrne
f0a9b781f3 [svn-r23740] HDFFV-8447: subsetting broke data output file option.
Reviewed in H5T-59, tested local linux
2013-06-07 13:39:54 -05:00
Quincey Koziol
d38fe20df6 [svn-r23695] Description:
Clean up warnings in H5Tconv.c (down to _only_ 9000 lines of output now!)

    Merge changes from Coverity branch back to trunk:

r20684:
Fix for coverity bug #1721 which was due to the fix for coverity bug #943.

r20685:
Use HDstrncpy. --gh

r20761:
Purpose: Fix valgrind issues

Description:
Free image_data and data as appropriate in test_image.

r20762:
Purpose: Fix coverity issue 600

Description:
Add check for return value of H5O_close in H5Ocopy.  Also cleaned up various
warnings.

r20763:
Purpose: Fix valgrind issues with h5stat

Description:
Modified h5stat to free "iter" before exit, and free "hand" before exit if
parse_command_line exits directly.

r20764:
fixed coverity issues:
69, 327, 614, 684, 685, 696, 697, 1681, 967, 826, 660, 80

r20765:
Fixed coverity bug 668

Pulled x * y * z multiply out of malloc operand into a separate n_elements variable to quiet integer overflow warning.

No actual integer overflow tests are performed since it's just a test program but I did add a check that n_elements is >= 1.

I also changed an error condition from doing its own close and returning -1 to "goto out;" like the rest of the program.

r20766:
Fixed coverity bug 667

Pulled x * y * z multiply out of malloc operand into a separate n_elements variable to quiet integer overflow warning.

No actual integer overflow tests are performed since it's just a test program.


Tested on:
    Mac OSX/64 10.8.3 (amazon) w/C++ & FORTRAN
    (h5committest upcoming)
2013-05-11 10:59:48 -05:00
Allen Byrne
4ae0c873e0 [svn-r23446] HDFFV-8344, HDFFV-8346: merge from 1.8 branch 2013-03-25 12:35:39 -05:00
Quincey Koziol
535456397c [svn-r23415] Description:
Avoid using fpclassify() for detecting zero/non-zero values.

Tested on:
    Mac OSX/64 10.8.3 (amazon) w/debug
2013-03-21 13:19:53 -05:00
Quincey Koziol
59dd5665a5 [svn-r23395] Description:
Bring Coverity changes from branch to trunk:

r20682:
fixed coverity:
76, 77, 635, 636, 1164, 1165, 1166, 1121, 1122, 1117, 1343

Tested on:
    Mac OSX/64 10.8.3 (amazon) w/C++ & FORTRAN
    (too minor to require h5committest)
2013-03-19 22:44:28 -05:00
Allen Byrne
3a4c43cbd4 [svn-r23353] Correct target name 2013-03-15 10:26:14 -05:00
Allen Byrne
aff5c20a6a [svn-r23305] HDFFV-8257: szip still used even if headers are not found. Change configure to test the result of the CHECK HEADERS call before checking for the library.
Tested: local linux, h5committest
2013-02-18 15:56:21 -05:00
Jonathan Kim
dbad502865 [svn-r23304] Purpose:
HDFFV-7643 - h5diff - incorrect exit-code returns for extra attribute exist

Description:
   h5diff: Fixed to return correct exit code 1 when detect unique
   attribute. Prior to this fix, h5diff returned exit code 0 indicating 
   two files are identical.

Tested: 
    jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), fred (mac64-LE), emu (solaris-BE),  Windows (32-LE cmake), cmake (jam)
2013-02-18 14:46:03 -05:00
Allen Byrne
c3e149d06f [svn-r23226] HDFFV-8285: suppress-ddl option: Changed file options to allow for filename F to be optional.
Tested: local linux
2013-02-04 15:15:59 -05:00
Quincey Koziol
a3e98d0e36 [svn-r23219] Description:
Bring reviewed changes from Coverity branch back to trunk (QK & JK):

r20457:
Coverity issue 691: return of H5duo could be negative. Fixed by using
STDOUT_FILENO and redesign parse_command_line and main to cleanup file
allocations. The output_file var is null when using stdout. In cleanup do not
close output_file if NULL.

r20510:
Initialize ufid = -1 and predicate HDclose call on ufid != -1

r20511:
Purpose: Fix coverity issue 1715

Description: Free "file" and nested data on failure in H5FD_core_open.

r20512:
Initialize ifid = -1 and predicate HDclose call on ifid != -1

r20514:
Initialize h5fid = -1 and predicate HDclose call on h5fid != -1

r20516:
Added else branch to the if (ret_value < 0) check.

r20522:
Addressed coverity issues 930-933, 850, 836, 835, 1307.  All minor 
potential buffer overwrite bugs, or coverity errors.  Fixed by replacing
strcpy and sprintf with strncpy and snprintf.

r20523:
fixed coverity issues 68, 1120, 1116i

r20524:
Check  H5Z_SZIP->encoder_present < 1 assuming 0 represents absence.

r20601:
Purpose: Fix coverity issues 1703-1705

Description: Modified the cleanup code in test_free in accum.c to reset
allocated buffers to NULL after they are freed, and modified the error cleanup
code to check if these buffers are NULL before freeing them.  Also fixed some
unrelated warnings in accum.c.

r20602:
Use HDsnprintf and HDstrncat

r20603:
Purpose: Fix coverity issues 808-809

Description: Modified test_core in vfd.c to check the returns from malloc, and
keep track of whether points and check are allocated by setting them to NULL
when they are not.  Added code to free points and check on error if they are
not NULL.  Also fixed unrelated warnings in vfd.c.

r20604:
Use HDstrncpy.

r20605:
Use HDstrncpy and HDstrncat.

r20606:
Purpose: Fix coverity issue 807

Description: Modified long_compact in stab.c to keep track of whether objname is
allocated by setting it to NULL when it is not.  Added code to free objname on
error if it is not NULL.

r20607:
Changed string function calls to use versions that specify the string length
to fix coverity issues 832 and 839.


Tested on:
    Mac OSX/64 10.8.2 (amazon)
    (Too minor to require h5committest)
2013-02-01 20:53:32 -05:00
Allen Byrne
415aa7e257 [svn-r23216] Add newline for special case of only raw data to stdout 2013-01-31 15:51:23 -05:00
Allen Byrne
ff421d9424 [svn-r23190] HDFFV-8285: Add suppress ddl option.
Tested: local linux
2013-01-22 15:43:12 -05:00
Allen Byrne
2fba171a67 [svn-r23160] HDFFV-8227: Mac DARWIN requires CMake 2.8.10 2013-01-14 13:35:30 -05:00
Allen Byrne
7a775b6c59 [svn-r23158] HDFFV-8169: h5dump incorrectly dumps a string into a binary file
Tested: local linux
2013-01-14 11:26:22 -05:00
Quincey Koziol
b9d042d2d2 [svn-r22998] Description:
Clean up warnings and bring changes from Coverity branch back to trunk:

r20451:
Fixed coverity 810

r20454:
Purpose: Fix coverity issue 816

Description: Modified various file drivers to always check the return value from
H5P_get_driver_info.

r20455:
Purpose: Cleanup fix for coverity issue 816

Description: Removed redundant check for "fa" in H5FD_core_open.


Tested on:
    Mac OSX/64 10.8.2 (amazon) w/debug
    (Too minor to require h5committest)
2012-11-01 11:01:37 -05:00
Jonathan Kim
961a24ac3c [svn-r22933] Purpose:
HDFFV-8145 h5diff slowness with version >= 1.8.7

Description:
    Improved speed when comparing HDF5 files with lots of attributes. Much slower performance was identified with release version from 1.8.7 to 1.8.10 compared to 1.8.6.
    
Tested: 
    jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), Windows (32-LE cmake), cmake (jam)
2012-10-19 16:28:14 -05:00
Quincey Koziol
e9519f5e6a [svn-r22921] Description:
Review Coverity changes and bring them back to trunk. (QK & JK)

r20402:
Added #includes for h5tools.y or h5tools_utils.h as required to remedy implicit
function declarations which caused compiler warnings and coverity issues 703-4
and 708-11.

r20414:
This is related to the previous checkin r20399.  There were incorrect updates
which caused incorrect behavior when no file was given. Also possible segfault
when handling hyperslab options. Simplify the code changes.

r20449:
Description: Modified H5E_walk2_cb to check return value of H5I_object_verify.

r20450:
fixed coverity 813


Tested on:
    Mac OSX/64 10.8.2 (amazon) w/C++, FORTRAN, debug & threadsafe
    (too minor to require h5committest)
2012-10-18 14:47:39 -05:00
Larry Knox
33504deb83 [svn-r22908] Reverted changes in revision 22819
Tested with h5committest on jam, koala and ostrich.
2012-10-16 16:38:58 -05:00
Larry Knox
c5371d7618 [svn-r22819] Added H5BLD_STATIC and HDF5_USE_SHLIB to configure.ac so that if configured with --disable-static the default for HDF5_USE_SHLIB in the compile scripts will be changed to yes. This is a fix for HDFFV-8141, where the compile scripts try to link to non-existant static hdf5 libraries.
Tested on jam,koala,ostrich(h5committest) and other THG machines.
2012-09-26 23:49:19 -05:00
Allen Byrne
eff696a3b0 [svn-r22785] HDFFV-8153: Pull POSIX_C_SOURCE define out to separate variable. Use ADD_DEFINITIONS (${HDF5_EXTRA_C_FLAGS}) in non-fortran CMakeLists.txt folders
Tested: jam with intel compilers
2012-09-18 17:08:07 -05:00
Jonathan Kim
89a2c4a783 [svn-r22751] Purpose:
HDFFV-5919 -  GMQS: h5diff - The number of object difference is not consistent between dataset and group/type when attribute(s) have differences

Description:
  Object differences are not consistent between dataset and group/datatype when their attribute(s) have differences. This is because attribute(s) differences is not accumulated to group or datatype object’s difference, but accumulated to dataset difference.
  To fix, do not accumulate attribute difference to dataset difference.  This is referred to h5diff’s default behavior and also past report from users that users were confused by the accumulated behavior. (also can’t figure out only for dataset difference , also hard to spot dataset difference when it has lots of attributes or differences)
  This also lead to fix inconsistent format indicating difference between dataset and group/datatype object.

Tested: 
    jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE),  Windows (32-LE cmake), cmake (jam)
2012-09-10 16:40:47 -05:00
Allen Byrne
1f8fb63581 [svn-r22709] HDFFV-8129: reconfigured on jam, Remove overloading of autotools TESTS var, rename configure.in to configure.ac, convert test scripts from hard *.sh to configure managed *sh.in files.
Tested: h5committest
2012-08-23 11:07:43 -05:00
Larry Knox
edf83e5d1f [svn-r22706] Updated autotools: autoconf 2.69, automake 1.12.3, m4 1.4.16, libtool 2.4.2
Tested THG machines.
2012-08-22 00:00:32 -05:00
Jonathan Kim
231fc4d781 [svn-r22684] Purpose:
Address HDFFV-7942 - h5diff: incorrect result for comparing attribute data with different type size in same class

Description:
   When comparing attribute data values with same type class but different size, the result was incorrect.  It was due to the size difference and got truncated. 
   Fixed to match up the smaller type size to big type size like what dataset does.

  
Tested: 
 jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows (32-LE cmake), cmake (jam)
2012-08-15 11:04:26 -05:00
Allen Byrne
9c547117ec [svn-r22637] Remove legacy command to kill MPI processes on obj to obj testing.
Tested: Windows, jam, koala
2012-08-06 15:08:12 -05:00
Allen Byrne
db5a8eaa54 [svn-r22631] Move executable statement to after declarations 2012-08-05 21:48:11 -05:00
Allen Byrne
28943c415b [svn-r22625] HDFFV-8111: h5diff compare file to itself - removed path shortcut 2012-08-03 15:11:36 -05:00
Jonathan Kim
99ef5765f5 [svn-r22618]
Purpose:
  HDFFV-8003 - ph5diff (parallel h5diff): daily test failure on ember intermittently during non comparable test file comparison
  HDFFV-7755 - parallel h5diff : hanging on koala intermittently during non comparable test file comparison

Description:
  non-comparable test intermittently hung on koala and ember, but not on jam. it didn't occur until -np reaches 4 or bigger. it occurred once out of many repeated attempts of the same test.
  There was a incorrectly (mistakenly?) duplicated code in MPI section which caused such hang in a certain condition. The test used more processes than other tests, which increased chance to trigger more undone processes, and such process could enter the incorrect code section and wait for wrong pair of send. it explains why it occurred intermittently according to machine condition and using a certain feature. 
  Removed incorrect code which blocked correct code.
  
Tested: some manually repeated test performed
 jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE)
2012-08-01 12:07:46 -05:00
Allen Byrne
389e928176 [svn-r22604] cast void* to char* for calculation
Issue on windows
2012-07-26 08:32:12 -05:00
Allen Byrne
dd27fe612c [svn-r22602] 2012-07-25 17:17:48 -05:00
Allen Byrne
210d04b05f [svn-r22567] HDFFV-7784: add attributes to the list of file contents option for h5dump. This is accomplished by adding an optional value to the option (-n)
Created test and reference files.

Tested: local linux with cmake
2012-07-12 15:30:30 -05:00
Allen Byrne
b54b3fcf29 [svn-r22563] HDFFV-8095: index order of links wrong
Create setters for indexing options in h5trav.c to be set before the obj table is created. 
Revert h5trav_print to remove now duplicated parameters.
Added test and testfiles.

Tested: local linux with cmake
2012-07-12 10:38:44 -05:00
Allen Byrne
a496d41ac7 [svn-r22537] Correct error string contents 2012-07-10 09:22:40 -05:00
Allen Byrne
a0aca32d35 [svn-r22535] added missing break to end of case statement 2012-07-10 08:57:58 -05:00
Allen Byrne
7417af566e [svn-r22533] Correct order of declarations in functions. 2012-07-10 08:16:26 -05:00
Allen Byrne
17eca872f1 [svn-r22531] HDFFV-5942: sort options with contents option
Added static local variables in h5trav to hold the index_by and index_order values. Defaults are set.
H5dump only use of the trav_print function, added two parameters and passed in the sort_by and sort_order variables.

Tested: local linux
2012-07-09 14:41:17 -05:00
Allen Byrne
b608652f7e [svn-r22479] Remove subfolder tools from install command 2012-06-20 09:43:02 -05:00
Allen Byrne
eb5b8163f9 [svn-r22411] reduce compiler warnings by removing unreferenced variables and adding cast
Tested: local linux
2012-05-25 12:39:07 -05:00
Allen Byrne
336a743068 [svn-r22405] HDFFV-8018: add INSTALL commands for packaging the pdb files for windows when configured with RelWithDebInfo
Tested: local linux and Windows
2012-05-24 16:50:06 -05:00
Allen Byrne
b904ca7ec3 [svn-r22391] HDFFV-7999: h5dump did not display H5T_DSET_UTF8.
Changed if/else block to switch like in h5ls, and distinguished between ERROR and UNKNOWN.
Reviewed by JKM
Tested: local linux
2012-05-22 16:36:45 -05:00
Jonathan Kim
1b35c60118 [svn-r22319] Purpose:
Fix for HDFFV-7998-h5diff: incorrect behavior and output for comparing symbolic dangling links without following-symlinks option 

Description:
  Fix not to check and display dangling link status without --follow-symlinks option.
  Berfor the fix, when comparing symbolic link to symbolic link without follow-symlinks option, h5diff followed to check if those links are dangling or not. It caused to display output incorrectly (dangling link instead of symbolic link).
  
  The fix also improved performance when comparing lots of symbolic links without the --follow-symlinks option.
  Test cases were added and tagged with jira#.

Tested:
  jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE),  Windows (32-LE cmake), Cmake (jam)
2012-04-26 10:56:16 -05:00
Allen Byrne
8c138d7844 [svn-r22318] Use new function that combines two functions that check for vlen types. Based on code used in h5ls.
Tested: local linux
2012-04-26 09:51:36 -05:00
Quincey Koziol
a07c8f9247 [svn-r22287] Description:
Clean up more FUNC_ENTER/FUNC_LEAVE macros and move H5D & H5T code toward
the final design (as exemplified by the H5EA & H5FA code).

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug & parallel
2012-04-16 16:20:26 -05:00
Jonathan Kim
6cef6bca1f [svn-r22176] Purpose:
Fix for HDFFV-7644 GMQS: h5diff - incorrect behaviors when comparing HDF5 files with different type of objects (dataset, group, type) as common objects

Description:
  Fixed failure for comparing same named object with different object types in comparing groups. (common object comparison)
  Prior to the fix, h5diff resulted in error. After the fix, h5diff detects such case as non-comparable and display messages accordingly.
  Test cases were added and tagged with jira#.

Tested:
  jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE),  Windows (32-LE cmake), Cmake (jam)
2012-03-28 17:09:38 -05:00
Jonathan Kim
d476ce138b [svn-r22114] Purpose:
Fix for HDFFV-7837 - h5diff: incorrect behavior with exclude-path option when unique object exist only in one file

Description:
  If unique objects exists only in one file and try to exclude
  the unique objects with --exclude-path option, h5diff missed 
  excluding some objects. 
  Fixed to exclude objects correctly in such case.
  Test cases were added and tagged with jira#.


Tested:
  jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE),  Windows (32-LE cmake), Cmake (jam)
2012-03-21 16:00:15 -05:00
Allen Byrne
a51eaab41a [svn-r22087] Minor formatting changes to sync with 1.8 2012-03-19 09:03:12 -05:00
Quincey Koziol
46a289c796 [svn-r22061] Description:
Change to use versioned API call, to avoid problems when defaulting to
older AI versions.

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug
2012-03-13 09:38:37 -05:00
Peter Cao
57295db6c7 [svn-r22054] Use HDmalloc/free. 2012-03-12 16:53:24 -05:00
Peter Cao
fcf96afeb2 [svn-r22052] - h5dump: Added capability for "-a" option to show attributes containing "/"
by using an escape character. For example, for a dataset "/dset" 
               containing attribute "speed(m/h)", use "h5dump -a "/dset/speed(\/h)" 
               to show the content of the attribute. See details at HDFFV-7523
2012-03-12 16:27:11 -05:00
Allen Byrne
bec199165a [svn-r22042] HDFFV-7957-7958:
Add tools error stack and check return from H5Dreference call.
Tested: CMake and h5committest
2012-03-12 11:33:15 -05:00
Jonathan Kim
0a46593a38 [svn-r22038] Purpose:
Fix for HDFFV-7835 h5diff: incorrect result for comparing the two same type symlinks as dangling links.

Description:
  When two symbolic dangling links are compared with --follow-symlinks option,
  the result should be same. It works for comparing two files, but didn't work
  for comparing two objects. 
  Test cases were added and tagged with jira#.


Tested:
  jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE),  Windows (32-LE cmake), Cmake (jam)
2012-03-09 15:34:37 -05:00
Allen Byrne
3723a9591e [svn-r22033] Remove unnecessary INCLUDE_DIR command
Tested: local linux and windows
2012-03-07 09:39:38 -05:00
Allen Byrne
f99cdd5afe [svn-r22019] Cleanup warnings from compiles
Tested: local linux
2012-03-02 16:30:30 -05:00
Jonathan Kim
b994a10148 [svn-r22012] Purpose:
Task for HDFFV-7862 - Select data by chunk direction to improve performance in h5repack

Description:
  h5repack sometimes became very slow when handling big chunked datasets in
  certain cases. (when chunk boundary doesn't match with a hyperslab boundary.)
  The main issue was from figuring out a hypeslab without considering chunk
  boundary to read from and write to such datasets.
  The update was made to figure out a better hyperslab unit with considering
  chunk boundary to improve performance for such cases prior to the update.


Tested:
  jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows
2012-03-01 17:59:46 -05:00
Allen Byrne
df6c92e506 [svn-r22004] Reduced warnings and fixed conflicts resulting from including h5tools.h
Tested: local linux
2012-02-28 13:26:34 -05:00
Allen Byrne
6765de0c65 [svn-r21991] Cleanup minor issues found during 518 merge 2012-02-27 14:25:22 -05:00
Allen Byrne
8405400213 [svn-r21986] Updated haddr_t format for print of STORAGE_LAYOUT - linew 32 issue 2012-02-24 18:27:42 -05:00
Allen Byrne
202c36682b [svn-r21985] Tools must call h5tools_init before command_line parsing or using tools_mesg functions.
Tools library uses alais variables for stdout, stderr and tools library uses HDfprintf() functions.

Tested: local linux
2012-02-24 16:14:47 -05:00
Allen Byrne
2dffa66ef7 [svn-r21984] Correct HD prefix in tools
Checked for HD support.
2012-02-24 11:03:17 -05:00
Allen Byrne
827cbbba31 [svn-r21982] Correct HD prefix in tools for exit
Checked for HD support.
2012-02-24 10:45:54 -05:00
Allen Byrne
cec338c647 [svn-r21981] Correct HD prefix in tools for fprintf
Checked for HD support.
2012-02-24 10:32:36 -05:00
Allen Byrne
5b1c9ffe2d [svn-r21980] Correct HD prefix in tools for *alloc
Checked for HD support.
2012-02-24 09:39:17 -05:00
Allen Byrne
944f2cdf8d [svn-r21979] Correct HD prefix in tools for strlen and memcpy
Checked for HD support.
2012-02-24 09:27:57 -05:00
Allen Byrne
0b4463911f [svn-r21974] Update HSIZE_T print statements to use correct macro.
Fix some more HD prefix issues in tools.

Tested: local linux
2012-02-23 14:08:09 -05:00
Allen Byrne
9974e02bc0 [svn-r21973] Correct limited reallocation on windows.
Tested: local linux, windows, h5committest
2012-02-23 12:45:46 -05:00
Allen Byrne
c47f6becf2 [svn-r21972] Split append statement into two parts - linew hsize_t issue 2012-02-23 09:16:26 -05:00
Allen Byrne
108c788d37 [svn-r21971] Correct HD prefix 2012-02-22 17:23:08 -05:00
Allen Byrne
bd11f8643d [svn-r21970] Added missing HD prefix 2012-02-22 17:03:07 -05:00
Allen Byrne
d59da45c98 [svn-r21969] Added missing HD prefix
Correct indentation
2012-02-22 16:58:50 -05:00
Allen Byrne
6ef73c4282 [svn-r21968] Added missing HD prefix 2012-02-22 16:40:23 -05:00
Allen Byrne
60030b5631 [svn-r21967] Checked all %lu references and corrected 2 that should have been '%"H5_PRINTF_LL_WIDTH"u'
Moved lib variables windows linking declarations to proper file location.

Tested: local linux windows
2012-02-22 09:03:59 -05:00
Allen Byrne
1d0c7360ef [svn-r21963] Fixed issue with compression value not printing - format parameter was wrong, needed to be long long.
Enabled compression tests

Tested: 32-bit windows
2012-02-20 12:41:00 -05:00
Allen Byrne
d195d4bf55 [svn-r21957] Windows DLL macro missing on data in header 2012-02-17 21:11:12 -05:00
Allen Byrne
f55a1344ad [svn-r21956] Windows DLL macro missing on functions in header 2012-02-17 21:05:56 -05:00
Allen Byrne
fbd74f00cf [svn-r21955] Missed bin/reconfigure on h5dump and tools/lib 2012-02-17 20:05:16 -05:00
Allen Byrne
fb762aa6b0 [svn-r21953] HDDFV-7560: h5dump refactoring
Tested: local linux
2012-02-17 16:41:58 -05:00
Allen Byrne
5b03d4b08d [svn-r21952] HDFFV-5874: -c and -k subsetting
Tested:local linux
2012-02-17 15:14:03 -05:00
Jonathan Kim
13ef2d1fbb [svn-r21890] Purpose:
Fix for HDFFV-7836 h5diff: displays error stack message for comparing the two dangling symlink with follow-symlinks option

Description:
  While ago, to improve performance, skipping same object checking 
  (h5tools_is_obj_same()) was added. 
  However the checking function doesn't understand about the dangling link and
  caused the issue. 
  Since handling dangling link code section already implemented, move the 
  checking function after handling dangling-links to address the problem.
  Test was added and tagged with jira#.


Tested:
  jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE),  Windows (32-LE cmake), Cmake (jam)
2012-01-24 15:39:59 -05:00
Allen Byrne
cc3eb8da73 [svn-r21804] Update CMake Required version in all folders to match current standard 2.8.6 2011-12-05 11:19:09 -05:00
Allen Byrne
4c5c484b99 [svn-r21715] Correct SET_TARGET_PROPERTIES commands 2011-11-04 12:31:32 -05:00
Dana Robinson
fa4ab23b9e [svn-r21664] Added solution folders for most of the projects. This still needs some polish - the solution folder assignment should go closer to the target declaration and not all projects are grouped (parallel, c++, fortran, hl, and a few others).
Tested on Windows.
2011-10-25 01:59:10 -05:00
Jonathan Kim
e54d15a26c [svn-r21658] Purpose:
HDFFV-7770 - h5diff segmentation fault on JPSS files

Description:
    Fixed segfault over non-comparable attribute with different dimention or
    rank, along with '-c' option to display details.

Tested:
 jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows, Cmake
2011-10-24 16:50:13 -05:00
Neil Fortner
395c1c7db5 [svn-r21603] Purpose: Add generic skip list implementation
Description:
Added new H5SL_TYPE_GENERIC skip list type, which uses void *'s as keys and a
client-supplied callback for key comparison.  This was added to support the
upcoming "merge named datatype" feature for H5Ocopy, but may be used in other
places as well.  Also added testing.

Also fixed a potential bug with the H5SL_TYPE_OBJ implementation, and added
testing for that.

Tested: jam, koala, heiwa (h5committest), durandal
2011-10-18 16:27:58 -05:00
Jonathan Kim
664c013fc7 [svn-r21586] Description:
Added a funtion to reset dataset & hyperslab buffer size for h5repack from an 
    environment variable.
    This is performance debugging purpose for now.

Tested:
 jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), Windows (32-LE), cmake
2011-10-14 17:44:11 -05:00
Jonathan Kim
86faf0b302 [svn-r21396] Purpose:
HDFFV-7693 - h5diff produces different behavior between versions: 1.8.3 and 1.8.6

Description:
    There were two issues on this. 
    One was not displaying all the comparable objects if non-comparable 
    object/attribute exist and compared before comparables ones. This issue
    occurred after 1.8.4 release. This is the issue from user.
    The other issue was not displaying all the comparable attributes, 
    if non-comparable object/attribute exist and compared ahead. This issue 
    were exist even before 1.8.4 release. So it's possible some attribute 
    comparison may have not displayed correctly in the past, if non-comparable 
    data were exist in common object.
    Fixed h5diff to display all the comparable object and attribute regardless 
    of non-comparables. 

Tested:
 jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake (jam, Windows)
2011-09-16 14:29:03 -05:00
Raymond Lu
64b1807783 [svn-r21378] The tools used "%hhd" to print signed char. But VMS doesn't know it. So I used H5_VMS to have a different way ("%hd") to print it.
Tested on jam.  Not tested on VMS yet.  Simple change.
2011-09-13 10:45:34 -05:00
Jonathan Kim
cf81925931 [svn-r21358] Purpose:
HDFFV-7712 - h5diff: segfault over combinations of complex container types (compound, array, vlen)


Description:
    - Fixed segfault over dataset with container types (array,lven) with multiple nested compound types. (ex: compound->array->compound, compound->vlen->compound)

Tested:
    jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake (jam)
2011-09-02 11:29:45 -05:00
Raymond Lu
d08f89f07d [svn-r21354] Issue 7674 - CLANG compiler complained about the line (about 800):
tempint = (tempint >> packed_data_offset) & packed_data_mask;
The right shift may cause undefined behavior if PACKED_DATA_OFFSET is 
32-bit or more. For every kind of native integers, I changed the code 
to make it zero if PACKED_DATA_OFFSET is greater than or equal to the
size of integer.

Tested on Mac OS Lion with CLANG compiler and jam, koala, and linew.
2011-09-01 15:51:43 -05:00
Scot Breitenfeld
9eb1d607d8 [svn-r21249] Description: Part II of F2003 branch merge into the trunk.
Ran bin/reconfigure to update the Makefile.in in directories not part of the fortran directory check=in. Updates Makefile.in due to changes made in configure.in for the Fortran 2003 additions.

Tested on all platforms run under daily tests.
2011-08-18 09:38:53 -05:00
Jonathan Kim
e703a6a2a4 [svn-r21236] Purpose:
Work for:
   HDFFV-7515 - GMQS: h5unjam - incorrect help page and should display when 
   no file is given.
   and
   HDFFV-5941 - h5jam: specifying a user block file with a proper HDF5 magic
   number will result in a corrupted HDF5 file.


Description:
   - Revised command help pages of h5jam and h5unjam. The descriptions
     were not up to date and some were missing. (HDFFV-7515)
   - Fixed h5jam not to allow specifying an HDF5 formatted file as input 
     file for -u (user block file) option, because the original HDF5 file 
     will not be accessible if allows. (HDFFV-5941)

Tested:
    jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake (jam, Wondows)
2011-08-16 15:41:47 -05:00
Allen Byrne
dd7693bde0 [svn-r21195] Correct windows exports for h5diff. 2011-08-08 16:59:09 -05:00
Allen Byrne
4eb2b76737 [svn-r21166] Remove subfolder in library install
Tested: local linux
2011-08-01 14:37:34 -05:00
Quincey Koziol
a777619a6b [svn-r21121] Description:
Switch from H5P_DATASET_ACCESS_DEFAULT to H5P_DEFAULT for calls to
H5Rdereference2().

Tested on:
    Mac OS X/32 10.6.8 (amazon) w/debug
    (too minor to require h5committest)
2011-07-18 18:12:28 -05:00
Raymond Lu
304f19d730 [svn-r21117] Issue 2763 - I added a new parameter of object access property list to the function H5Rdereference. It's called H5Rdereference2 now. H5Rdereference function has been deprecated to H5Rdereference1. I also added some test cases in trefer.c.
Tested on jam, heiwa, and koala.
2011-07-18 16:23:02 -05:00
Peter Cao
877b7aed1b [svn-r21105] Fixed two bugs:
- h5repack: h5repack failed to copy dataset if the layout is changed from chunked with
            unlimited dims to contiguous. (PC -- 2011/07/15)
     - h5diff: "--delta" option considers two NaN of the same type are different, which is wrong
            based on http://www.hdfgroup.org/HDF5/doc/RM/Tools.html#Tools-Diff. (PC -- 2011/07/15)
2011-07-15 18:02:50 -05:00
Jonathan Kim
83b77cb4eb [svn-r21014] Purpose:
HDFFV-5878 - GMQS: h5dump - incorrect output format for array type with multiple elements in an index

Description:
    Fixed h5dump to display the first line of each element into correct 
    position for multiple dimention array type.
    Before this fix, the first line of each element in array were displayed 
    after the last line of previous element without moving to the next 
    line (+indentation)

Tested:
    jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE),  Windows (32-LE)
2011-06-21 13:24:35 -05:00
Quincey Koziol
1d9307bd91 [svn-r20885] Description:
Bring Coverity changes back to trunk:

r20340:
Address coverity issue 248.  Set freed pointer to NULL if realloc fails, then check for NULL before attempting to close array of handles stored in memory addressed by pointer.

r20341:
Added initialization udata.path = NULL; udata.visited = NULL; to prevent unintialized use after done: label.

Do C-style initialization AFTER all variable definitions.

r20342:
Fix valgrind error in H5DUMP-XML-tall.h5

r20343:
Addressed Coverity issue 591 - check the return value of H5S_SELECT_ITER_RELEASE.

r20344:
Added initialization udata.path = NULL; to prevent uninitialized used after done: label

r20347:
Purpose: Fix memory leak in overhead.c

Description: Fixed leak in test() in overhead.c where array "had" was never
freed.


r20348:
Addressed Coverity issue 705 - added prototype for resize_configs_are_equal to cache_common.h.

r20392:
Purpose: Fix coverity issues 1677 and 1678

Description: Added return value checking for 4 funciton calls in
H5tools_get_symlink_info().

r20394:
Purpose: Fix coverity issues 1674 and 1675

Description: Modified H5Epush2() and H5E_printf_stack() to keep track of whether
va_start() has been called, and to call va_end() at the end if so.

r20395:
Should be H5MM_calloc(count * sizeof(void*)). Fixed --gh 

r20396:
Should be H5MM_calloc(count * sizeof(void*)). Fixed. --gh

Tested on:
    Mac OSX/32 10.6.7 (amazon) w/debug & production
    (h5committested on branch)
2011-05-20 17:04:03 -05:00
Jonathan Kim
b9e1b158a5 [svn-r20804] Purpose:
HDFFV-7594 - GMQS: h5dump shows wrong values for H5T_STD_I8LE dataset on Blue-gene (ppc64 linux BE +@)

Description:
    For the STD_I8 type data, updated to use 'signed char' instead of 'char' as
    'char' could be defined as unsigned on a certain system, which cause h5dump
    to display data values incorrectly.

Tested:
    jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE)
2011-05-12 18:12:29 -05:00
Allen Byrne
f49dc38127 [svn-r20796] Refactor print_data_region_blocks/ponts to remove context passed in by value. The print functions needed an independent context with only the current indent level passed in by argument. Also synched the two routines logical flows and corrected a mem_space error.
h5dump (and h5stat, h5jam/h5unjam) help option not tested. Added h5dump parse_command_line technique for h5stat and h5jam/unjam and created testfiles.

Tested: local linux
2011-05-11 15:45:54 -05:00
Allen Byrne
2e7d42a43c [svn-r20785] Revert region data print changes from yesterday 2011-05-10 08:52:13 -05:00
Allen Byrne
3b06122b50 [svn-r20783] correct type of variable for blkindx 2011-05-09 16:50:35 -05:00
Allen Byrne
8e30e8da7b [svn-r20781] correct typo of variable types for indx and jndx 2011-05-09 16:36:34 -05:00
Allen Byrne
a4c349dece [svn-r20776] Refactor print_data_region_blocks/ponts to remove context passed in by value. The print functions needed an independent context with only the current indent level passed in by argument. Also synched the two routines logical flows and corrected a mem_space error.
Tested: local linux
2011-05-09 14:56:32 -05:00
Jonathan Kim
054ca47350 [svn-r20767] Purpose:
HDFFV-5928 - GMQS: h5diff problem and improvement on comparsing the same objects

Description:
    Improved performance by eliminating duplicated action for getting object 
    information in half from the previous fixe when comparing group vs group. 
    This is addition to the previous commit r20676.

Tested:
  jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), cmake
2011-05-06 17:02:24 -05:00
Allen Byrne
84effee753 [svn-r20752] Windows does not have snprintf, need to use HDsnprintf. 2011-05-05 10:56:36 -05:00
Allen Byrne
c5e00232ff [svn-r20725] Add overlooked changes from part of coverity fix
Tested: local linux
2011-05-04 15:28:09 -05:00
Dana Robinson
fbba9db955 [svn-r20724] Purpose: Fix a bug in h5diff when enum values are compared that do
not represent a valid enum value.

Description:
The h5diff code compares enum values by converting them to strings and
then comparing them.  When the enum value is out of range and can't be
converted to an enum string representation, the comparison was skipped.

The code now flags differences when one of the two enum values is out
of range (two out of range values are compared in memory).  A test has
been added to the tools test script.

This fixes JIRA HDFFV-7527

Tested on: jam, koala, heiwa (h5committest)
2011-05-04 15:07:38 -05:00
Allen Byrne
2ee1841187 [svn-r20721] Refactor ext lib import and install.
Add SOVERSION for linux
2011-05-04 14:42:03 -05:00
Allen Byrne
907a5a1df0 [svn-r20713] Packed Bits Merge:
removed option defines and #ifdef/#endif
   refactored all printf to HDfprintf in h5dump.c
   formatted and indention improvements
   synched with 1.8 branch
   
Tested: local linux
2011-05-03 12:56:23 -05:00
Allen Byrne
87994982f9 [svn-r20677] Merge packed bits option from 1.8 branch to trunk. CMake only. Autotools merge to come.
Tested: local Linux
2011-04-29 13:38:41 -05:00
Jonathan Kim
170e7e53a5 [svn-r20676] Purpose:
- HDFFV-5928 - GMQS: h5diff problem and improvement on comparsing the same objects

Description:
    Fixed:
    1) adding h5tools_is_obj_same() function to check if two given IDs or paths point to the same object. This function can be very useful for other tools and applications.
    2) using h5tools_is_obj_same() at h5diff() and diff() in h5diff.c. If two paths point to the same object, there is no need to check the details of the object since we know there is no difference. The fix will increase the performance by skipping the content comparison. It also fixed the problem of reporting difference for some cases of comparing the same file, e.g. empty files or files with incomparable objects the same file.

    Test update:
    Updat prvious test cases (171, 172, 530) affected by this fix, so they
    still perfrom originally intended testing without bypassing.

Tested:
 jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), cmake
2011-04-29 12:02:31 -05:00
Raymond Lu
65794c39bf [svn-r20626] Albert's test on bp reveals that the dumper had assertion failure when it tried to display empty attribute data. I added
a check for empty attribute in h5dump.c. I also added a check for empty dataset in tools/lib/h5tools.c.

Tested on jam.  But I tested the same changes in 1.8 on jam, linew, and amani.
2011-04-25 11:59:51 -05:00
Quincey Koziol
53eb528071 [svn-r20539] Description:
Bring Coverity changes back to trunk:

r20276:
Add recursive is vlen string function.
Cleanup resource leaks for issues: 200,202,329,688,811,812


r20277:
Check types and close by adding error section: issue 687


r20278:
Replaced implicit pointer conversion with (ocrt_info.new_obj != NULL).


r20280:
Addressed coverity issues 927-929 & 583.  The real issue is failure to check 
file name length -- at least at the H5FD interface level.  This needs more work, but at least I have dealt with the issue in H5FDfamily.c


r20337:
H5O_type_t  obj_type = H5O_TYPE_UNKNOWN;


r20338:
Added udata.name = NULL; to prevent potential uninitialized use after done: label.


r20339:
coverity issues: 686,828,1670-1673,1707-1711


Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        FreeBSD/32 8.2 (loyalty) w/gcc4.6, in debug mode
        FreeBSD/64 8.2 (freedom) w/gcc4.6, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
2011-04-18 05:18:47 -05:00
Quincey Koziol
9431c7a97e [svn-r20536] Description:
Clean up various warnings & code formatting issues.

	Bring changes from Coverity branch to trunk:

r20085:
Purpose: Fix coverity issue 793

Description: Modified H5S_hyper_project_simple_higher() to free the entire span
list in new_space on failure.


r20091:
This is a fix for coverity bug #1683.
Changed the two printfs to use %lu (unsigned long) for printing "dset_size".


r20162:
Purpose: Fix coverity issue 785

Description: Modified H5T_enum_nameof() to free "name" on failure if it was
allocated.  Also clarified some code in H5S_hyper_rebuild_helper().


r20189:
Addressed coverity defect 783.

H5SL_new_node() in H5SL.c was failing to free space allocated in its
first alloc if the second alloc failed.  Added a call to H5FL_FREE
to address this issue.

This is purely to keep coverity happy -- if this code is ever triggered,
we have much larger problems.

Note that this fix will trigger an unused return value complaint
from coverity next week.


r20190:
Fixed Coverity issues 1561 1565 and 1678 (UNUSED_VALUES) by moving checks of return values to after the function call.


r20191:
Fixed coverity issues 643 644 and 1678 (CHECKED_RETURN).


r20232:
Addressed coverity issues 923-925.  Replaced calls to sprintf with calls
to HDsnprintf.


r20233:
Fix coverity issue 662.  Don't try to sort 0 attributes in H5Aint.c.


r20234:
Fix coverity issue 664.  Check for NULL before dereferencing in H5Gdeprec.c.


r20271:
Purpose: Fix coverity issue 784

Description: Modified H5_debug_mask() to keep a list of files opened for use as
a debugging output stream, and modified H5_term_library to close these files on
exit.


r20272:
addressed coverity issues 838 & 955.  Issue was use of strcpy() -- existing
code was safe, but modified to use strncpy() to keep coverity happy.


r20273:
Addresed coverity issues 1388 and 1389.
Initialized sel_iter->type to NULL in H5S_select_iter_init.


r20275:
Purpose: Fix valgrind issue in mf.c

Description: Fixed bug (incomplete if statement) in test_mf_fs_alloc_free() so
the retrieved node gets freed.


Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
2011-04-17 13:57:07 -05:00
Mike McGreevy
98362b664c [svn-r20504] Purpose:
General shared library improvements for CYGWIN / AIX

Description:

    Shared libraries are disabled on both CYGWIN and AIX due
    to inability to build them correctly. Part of the problem
    in both of these situations is the lack of the libtool
    flag -no-undefined, which tells libtool that all needed
    symbols are defined at link time (a requirement on these
    systems) and that it's okay to build shared libraries.

    Another problem are lack of dependencies between wrapper
    libraries and core C HDF5 library.

    This patch addresses both of these by fixing configure to
    add in -no-undefined flag for libtool during linking and
    adds automake dependencies in the Makefile.am files.

    After testing, both CYGWIN and AIX now generate shared
    libraries, but there are still some test failures in each.
    (cache_api, dt_arith, and testerror.sh on CYGWIN, and
    fortran tests on AIX).

    Even though the shared libraries are not quite perfect,
    this is a general improvement to what we had before, so
    I'm applying the patch anyways. Note that default behavior
    of shared libraries on these systems being disabled has
    NOT been changed and requires the use of the
    --enable-unsupported to attempt to build them.

    We will need to address the test failures in each
    architecture prior to formally supporting shared
    libraries on each.

Tested:

    h5committested & CYGWIN tested (on bangan)
    (AIX tested by Albert on bp-login2)
2011-04-14 16:21:59 -05:00
Mike McGreevy
a45c7424b2 [svn-r20502] Purpose:
Add "silent make" mode configure option.

Description:

    Automake 1.11 has a new option available that allows for a
    silent make mode. This functionality needs to be explicitly
    enabled in configure.in via the use of the automake macro
    AM_SILENT_RULES, which is what this commit is adding.

    This introduces a new configure option: 

        --{en|dis}able-silent-rules

    This option is on by default, and simplies compile and link
    line outputs when building the library. Disabling this option
    will print full "verbose" output (i.e., full compile and
    linking lines for each target).

Tested:

    This was tested on jam & h5committested
2011-04-14 14:45:57 -05:00
Quincey Koziol
e4c6ef2f06 [svn-r20480] Description:
Remove global variable for the path name in the group traversal code.  Also
clean up a bunch of compiler warnings.

Tested on:
    Mac OS X/32 10.6.7 (amazon) w/debug & production
    FreeBSD/32 6.3 (duty) w/debug
    FreeBSD/64 6.3 (liberty) w/debug
    Solaris/32 2.7 (linew) w/debug
2011-04-12 11:59:33 -05:00
Mike McGreevy
e006157deb [svn-r20475] Purpose:
- Revise shared Fortran library disabling scenarios in configure
    - Improve configure output summary

Description:

    Shared Fortran libraries are not supported on Mac, but were being
    disabled by configure in a way that also forced the C libraries
    to be static-only. This has been fixed, so now only shared Fortran
    is disabled while shared C can remain.

    This prompted two additional changes:

        1. While working on the check that addresses whether or not
           shared Fortran libraries are allowed, removed old and no
           longer needed check(s) that disable shared Fortran
           libraries with HP, Intel 8, PGI, and Absoft compilers.
           (Essentially, Mac is the only situation in which Fortran
           shared are disabled by configure.)

        2. Having two different states of libraries (i.e. shared C
           library with static-only Fortran library) was not apparent
           in the configure summary, which labeled all libraries as
           either shared and/or static. I've added lines to both the
           C++ and Fortran output sections to list shared/static-ness
           of these libraries specifically.

    Additionally, I've made sure that the new --enable-unsupported
    configure option correctly overrides configure if it tries to
    disable a shared library.

Tested:

    jam, fred, & h5committest
2011-04-11 16:00:38 -05:00
Jonathan Kim
553e452ce4 [svn-r20384] Purpose:
Fixed Bug 2184 - GMQS: h5diff - incorrect calculation code for 
    --use-system-epsilon option

Description:
    Merged from HDF5 1.8 branch r20369.
    Fixed h5diff for --use-system-epsilon option: the calculation changed
    from ( |a - b| / b ) to ( |a - b| ). This was decided for better 
    performance and was corrected only in HDF5 trunk, so 1.8 got updated.
    Also comments for equal_XXX() function were updated correctly. 
    Also help page and RM got updated correctly.
    Also add test cases for testing the differences w/wo the option.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows (32-LE)
2011-03-31 16:43:46 -05:00
Jonathan Kim
4147de8d02 [svn-r20294] Purpose:
Fixed CHICAGO: Bug 2121 - h5diff - incorrect and lack of output for the 
    different set of attributes (different number and names)

Description:
    Previously h5diff compared attributes correctly only when two objects have 
    the same number of attributes and attribute names are identical.
    This fix covers all other cases.
    Also didn't display useful information about attribute difference.
    This fixes both issues.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2011-03-22 10:47:07 -05:00
Jonathan Kim
f92d2371ff [svn-r20285] Purpose:
Improve the previous fix for Bug 2216 - GMQS: h5diff - memory leak when 
    compares vlen string in dataset or attributes

Description:
    Related to the previous checkin r20270 and r20266.
    Improve h5tools_detect_vlen() code for better performance. H5Tdetect_class
    already recusive on given type so don't need to be part of recusive call
    again. Also improve error handlings in h5tools_detect_vlen and 
    h5tools_detect_vlen_str functions.
    Also updated h5ls and h5dump code accordingly.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake - jam
2011-03-21 18:02:31 -05:00
Jonathan Kim
f845e716bc [svn-r20274] Purpose:
Fixed Bug 2214 - GMQS: h5diff - memory leak in diff()

Description:
    Memory leaks occurred when accessing symbolic links with --follow-symlink
    option. 
    Test cases are in testing script. (400 - 456, 501 - 518)
    An example test : valgrind  --leak-check=full  h5diff --follow-symlinks -v h5diff_softlinks.h5 h5diff_softlinks.h5

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake - jam
2011-03-18 15:13:16 -05:00
Jonathan Kim
d697acbfb5 [svn-r20270] Purpose:
Improve the previous fix for Bug 2216 - GMQS: h5diff - memory leak when 
    compares vlen string in dataset or attributes

Description:
    Improve the fix along with the previous checkin r20266.
    Add a new function to tool lib, h5tools_detect_vlen_data() which return 
    TRUE if include any kind of vlen data all at once, either VLEN-data or 
    VLEN-string and so on.
    Also updated h5ls and h5dump code accordingly.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake - jam
2011-03-18 13:50:19 -05:00
Jonathan Kim
e8d97aef7d [svn-r20266] Purpose:
Fixed Bug 2216 - GMQS: h5diff - memory leak when compares vlen string in 
    dataset or attributes

Description:
    Test for dataset : valgrind  --leak-check=full  ./h5diff -v h5diff_dset1.h5 h5diff_dset2.h5 /g1/VLstring
    Test for attr : valgrind --leak-check=full ./h5diff h5diff_attr1.h5 h5diff_attr2.h5
    Both test cases are in testing script.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake - jam
2011-03-17 18:00:14 -05:00
Allen Byrne
5ed4eda59e [svn-r20247] Change name of new VLEN function from H5Tdetect_vlen_str to h5tools_detect_vlen_str to match other functions in tools lib.
Added back test for H5Tdetect_class of H5T_VLEN after each instance of above function to catch all VLEN types in h5dump.

Tested: local linux
2011-03-14 16:03:20 -05:00
Allen Byrne
1eedd5b750 [svn-r20222] Correct mistake by declaring indexing variable removed from for at top of function. 2011-03-10 08:27:29 -05:00
Allen Byrne
55cd5326f3 [svn-r20221] Remove rougue 'int' inside for loop (cut-paste error) - windows complained. 2011-03-10 07:10:36 -05:00
Allen Byrne
5b3223c7c5 [svn-r20216] Valgrind fix for memory leak in h5tools_dump_xxx which is fixed by adding a new function;
htri_t H5Tdetect_vlen_str(hid_t tid) to h5tools. This needs to be called before any H5Aread/H5Dread and if TRUE, then call vlen_reclaim function after the corresponding h5tools_dump_xxx().

Tested: local linux and valgrind
2011-03-09 15:00:20 -05:00
Peter Cao
a56b49aaba [svn-r20206] Updated manifest and source code for fixing h5dump -y -o problem 2011-03-09 08:07:38 -05:00
Jonathan Kim
0619b155aa [svn-r20188] Purpose:
Fixing Bug 2161 - GMQS: h5dump - only on Windows, skip displaying a data value every a certain lines in array type dataset

Description:
    Fixed h5dump for skipping some values for long array type dataset on 
    Windows. This issue only occurred on Windows due to the different 
    return behavior from _vsnprintf() funtion.
     
Tested:
 Windows, jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2011-03-04 11:21:26 -05:00
Jonathan Kim
bb294c2b1e [svn-r20108] Purpose:
Fixing Bug 2092 - h5dump does not display index for a dataset

Description:
    h5dump skip displaying array indices every certain number when the 
    array type dataset is relatively big. The certain number varies 
    according to the size of each array. 
    This checkin fix the skipping array indices problem. This fix also
    correct indentation of the dataset data output.
     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2011-02-15 14:28:48 -05:00
Quincey Koziol
2fbca68293 [svn-r20070] Description:
Switch order of system includes, to correct error on FreeBSD machines.

Tested on:
	FreeBSD/32 6.3 (duty) w/debug
2011-02-09 09:48:42 -05:00
Quincey Koziol
575469a6a7 [svn-r20065] Description:
Bring changes from Coverity branch to trunk:

r19975:
Fixed potential mem leak at H5O_attr_open_by_name

r19980:
Fix coverity issue 792.
Free tmp_env_prefix in H5Lexternal.c line 365 if it is not NULL but its contents are 0 when it goes out of scope.

r20039:
Eliminate warnings about nested extern and implicit declarations of parallel_print and address Coverity defects 712-781 by #including h5tools_utils.h in h5diff_array.c, h5diff_attr.c, h5diff_dset.c and h5diff_util.c.

r20046:
Purpose: Address TOCTOU warnings in h5jam and h5unjam

Description: Coverity is afraid that the state of the input file could change
between the call to stat() and the call to open().  This is called a time-of-
check time-of-use (TOCTOU) vulnerability.  Modified stat calls to fstat which
uses an open file pointer so it (hopefully) won't complain any more.

r20047:
Addressed coverity issues 135-137, 462-464.  Local pointers that needed to be freed in case of error were moved out of a switch statement in src/H5Tnative.c, set to NULL, and checked before freeing.

Tested on:
    Mac OS X/32 10.6.6 (amazon) w/debug & production
    (h5committested on Coverity branch)
2011-02-08 16:35:54 -05:00
Quincey Koziol
a6d5fa2c7d [svn-r20061] Description:
Bring changes from Coverity branch to trunk:

r19930:
Fix memory leaks involving VL attributes in h5repack and h5diff.  The buffers in
copy_attr and diff_attr were not checked for the presence of a vlen before being
freed, and vlen storage was never reclaimed.  Added checks and calls to
H5D_vlen_reclaim().

r19933:
Purpose: Fix memory leak in H5L_move_cb()

Description: H5L_move_cb copied the source link using H5O_msg_copy() but freed
it manually using H5MM_xfree().  Since H5O_link_copy allocates the link using
H5FL_MALLOC, this causes the link to be allocated from the free list but is
never put back on the free list when it is freed.  This prevents the link free
list from shutting down properly.  Modified H5L_move_cb() and H5L_move_dest_cb()
to free the link properly using H5O_msg_free().

r19973:
Fix resource leaks by freeing string created by HD5f2string

r19974:
Issue #345: Inialize buf variable to null

Tested on:
    Mac OS X/32 10.6.6 (amazon) w/debug & production
    (h5committested on Coverity branch)
2011-02-07 19:53:45 -05:00
Quincey Koziol
ff845ed8b1 [svn-r20052] Description:
Clean up Coverity warnings, and fix some style issues:

r19735:
Fix for memory leak in test/mf found by valgrind.

r19736:
Fix memory leak in h5repack.  The buffer in copy_objects, when copying the
entire dataset at once, was not checked for the presence of a vlen, and vlen
storage was never reclaimed.  Added check and call to H5D_vlen_reclaim().

r19772:
Change H5assert() to
   if (H5T_VLEN != src->shared->type || H5T_VLEN != dst->shared->type)
          HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "not a H5T_VLEN datatype")

r19774:
removed unused priv.

r19775:
removed unused variables

r19778:
Fix memory leak comparing for variable length data types.

r19834:
Fixed memory leaks found by valgrind.  Memory errors remain for another day.

Tested on:
    Mac OS X/32 10.6.6 (amazon) w/debug & production
    (h5committested on branch)
2011-02-05 22:24:42 -05:00
Allen Byrne
f3c2eb9acf [svn-r19918] Add hh modifier to signed char printf format string. Added h5dump test to verify that signed/unsigned datasets print correctly.
Bring solution from 1.8 packed bits fix which solved problem on heiwa with Signed char of 8 bits
Tested: local linux
2011-01-05 15:18:16 -05:00
Allen Byrne
02888be7f2 [svn-r19909] Change how LINK_FLAGS for fortran are appended on Windows
bring r19908 from 1.8 branch
2011-01-05 09:46:08 -05:00
Jonathan Kim
562ba69f35 [svn-r19892] Purpose:
Bug 2089 - GMQS: h5diff segfault on a compound dataset with fixed length + 
    vlen string type order

Description:
    This is fix for the segfault when h5diff compares a compound dataset with 
    combination of fixed length string types and vlen string types in certain 
    orders. Optimized vlariable length string handling codes. The fix is 
    referred from h5dump handling vlen strings. 
    For testing, several compound datasets were added with various combinations.
    Previous failed cases:
     - Vlen string, Fixed length string, Vlen string, Fixed length string
     - Fixed length string, Fixed length string, Vlen string, Vlen string
     - Fixed length string, Vlen string, Fixed length string, Vlen string
     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2010-12-28 13:08:40 -05:00
Larry Knox
72634b34e4 [svn-r19839] Updated to libtool v 2.4, autoconf 2.68 and m4-1.4.15.
Tested with h5committest on amani, heiwa, and jam.
2010-11-23 17:56:59 -05:00
Jonathan Kim
ed45b7472e [svn-r19759] Purpose:
Fix compile error for Windows from previous checkin r19757.

Description:
    Previous log:
    Improve h5diff performance.
    The following changes for improving h5diff performance:
    1) use HDmemcmp() before comparing each elements 
       (memcmp() is very fast at both linew and jam)
    2) replace the expensive H5Tequals() calls
    3) retrieve datatype information at dataset level not each element level 
       for compound datasets


Tested:
 jam (linux32-LE), Windows
2010-11-11 11:51:59 -05:00
Jonathan Kim
40d56dd20c [svn-r19757] Purpose:
Improve h5diff performance.

Description:
    The following changes for improving h5diff performance:
    1) use HDmemcmp() before comparing each elements 
       (memcmp() is very fast at both linew and jam)
    2) replace the expensive H5Tequals() calls
    3) retrieve datatype information at dataset level not each element level 
       for compound datasets


Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2010-11-11 10:23:44 -05:00
Jonathan Kim
e45cfcb9ee [svn-r19712] Purpose:
Fixed h5diff to handle variable-length strings in a compound dataset 
    correctly. Also variable-length string array in a compound dataset.
    Bug #1989.
    

Description:
    Garbage values were displayed when h5diff compared variable-length 
    strings (or string array) in a compound type dataset. 


Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (Mac32)
2010-11-02 11:39:42 -05:00
Quincey Koziol
ba66540462 [svn-r19654] Description:
Bring Coverity revisions from branch back to trunk, and clean up some other
misc. compiler warnings also.

r19500:
Fix coverity items 1446 and 1447.  Moved up calls to memset in test_cont in
ohdr.c so the test never tries to close uninitialized locations.

r19501:
Fix coverity items 1398-1445.  Various uninitialized variable errors in fheap.c.

r19502:
Fixed coverity issue 579 and some additional warnings in the file as well.

r19503:
Bug fix: This fix addressed the "RESOURCE_LEAK" problems #789 and 790, run 26

r19504:
minor mods to try to keep coverity from flagging false positives.

r19505:
Fixed coverity issues 566 - 571.  Declared variables that are passed to functions that use them as arrays to be arrays of size 1.


Tested on:
    Mac OS X/32 10.6.4 (amazon) w/debug, production & parallel
    (h5committested on trunk)
2010-10-21 08:08:44 -05:00
Larry Knox
155b00d8ff [svn-r19506] Bring changes from revisions 19408, 19421, and 19442 from branches/hdf5_1_8 to trunk. These revisions reorganize the compile scripts using h5cc.in, h5fc.in, and h5c++.in, add checks for installed examples to the scripts that run them after installation, and add DESTDIR for install as needed for RPMs.
Tested on amani, heiwa and jam by h5committest and with CYGWIN.
2010-10-04 12:15:30 -05:00
Jonathan Kim
04a7315138 [svn-r19443] Purpose:
Fix for group comparison with exclude-path case. Use relative path.

Description:
 Related to "1890:  h5diff excluding object for file comparison via command line" checkins. (r19406)

Tested:
 jam, amani and heiwa
2010-09-20 17:11:50 -05:00
Allen Byrne
b4be8ae3d5 [svn-r19434] Correct use of lib, include, bin in INSTALL commands to use proper variables.
Tested: local linux
2010-09-20 15:38:35 -05:00
Allen Byrne
8394d611f2 [svn-r19418] On windows, an include bypassed the WIN32_LEAN_AND_MEAN define. Moved the define up. Moved the h5dif.h to after the h5private include
Tested: Windows
2010-09-17 13:05:32 -05:00
Jonathan Kim
eb7b5b2cef [svn-r19406] Purpose:
Add --exclude-path option

Description:
 Specified path to an object will be excluded from comparing the two files or two groups. If group is specified all the member objects will be excluded.
 Related to "1890:  h5diff excluding object for file comparison via command line"

Tested:
 jam, amani and heiwa
2010-09-16 16:46:16 -05:00
Jonathan Kim
c561dc7183 [svn-r19400] Purpose:
Fix for Bug1975 h5diff - support recursive comparison on group when specified as an object

Description:
 Compare member objects and groups recursively when two files or groups are specified to be compared. Support parallel diff and handling symbolic links accordingly.

Tested:
 jam, amani, heiwa
2010-09-16 12:48:06 -05:00
Larry Knox
47c792faa0 [svn-r19366] Updated autoconf to version 2.6.7, libtool to version 2.2.10, and m4 to version 1.4.14. Also added m4 directory for m4 macros according to autoconf suggestion.
Tested with h5committest on amani, jam, and heiwa, and on linew.
2010-09-10 10:45:07 -05:00
Allen Byrne
e65aa8c365 [svn-r19325] Added parallel build commands.
Corrected use/name of source folder aliases.
Duplicated FindMPI.cmake so that non-c++ compiler is found first (recommemded commands did not work).

Tested: local linux with mpich
2010-08-31 15:15:13 -05:00
Allen Byrne
5c549a6345 [svn-r19300] BZ 1958: Add h5dump xml tests to CMake support
Tetsed: local linux
2010-08-25 17:33:59 -05:00
Quincey Koziol
0cd7123fb6 [svn-r19292] Description:
Merge r19290 & r19291 from 1.8 branch to trunk:

r19290:
Correct another error in metadata accumulator dirty region calculations
(this time with a corner case when freeing data in the file).

r19291:
Avoid getting object information for soft/external links if we aren't
going to traverse across the link itself.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
        Mac OS X/32 10.6.4 (amazon) in debug mode
        Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
        Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
2010-08-24 16:03:32 -05:00
Allen Byrne
f4c75504d4 [svn-r19262] Undo r19261. 2010-08-20 10:48:12 -05:00
Allen Byrne
4050bd2422 [svn-r19261] Remove unused variables and allocation
Tested: local linux
2010-08-20 10:38:15 -05:00
Quincey Koziol
2f6e3cb5be [svn-r19252] Description:
Bring Coverity changes from branch to trunk:

r19161:
Fixed the part for matching the subset info with dataset

r19189:
BZ1646: h5dump does not check number of dimensions for subsetting parameters against the dataset

Changed subset_t structure from holding hsize_t pointers to holding new subset_d pointers, which hold the original hsize_t pointer + len. this len is then checked against dataset ndims in the handle_dataset function of h5dump.

Changed all references to use new data structure.

Added tests for each subset parameter.

r19190:
Added new h5dump ddl files

Tested on:
    Mac OS X/32 10.6.4 (amazon) w/debug & production
    (h5committested on branch)
2010-08-19 14:55:48 -05:00
Quincey Koziol
54d5a565f9 [svn-r19237] Description:
Clean up misc. compiler warnings.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
        Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
2010-08-12 16:11:00 -05:00
Allen Byrne
eee9ca47a1 [svn-r19202] [BZ1953]implementation for the proposed changes suggested by the "h5dump_output_option" RFC. This required that the region reference code be duplicated and reduced to allow the do_bin_output() function to understand region references. The container type-id also needed to be propagated into the do_bin_output() function and functions referenced (render_bin_output*).
Existing tests tested the binary function, so only one test was added to test the region reference generated file.
Tested: local linux
2010-08-09 13:15:37 -05:00
Allen Byrne
6d22b60931 [svn-r19183] Corrected h5repack verbose test for windows
Updated tools/lib source dir variable for source list

Tested: local linux
2010-08-06 12:53:52 -05:00
Quincey Koziol
7fe87a2472 [svn-r19153] Description:
Bring changes on Coverity branch back to trunk:

r19040:
Fixed coverity #440 - NULL check after dereference.  We moved the NULL check up
into the IF block and changed it to assertion.

r19041:
Maintenance: Addressed Coverity issues 441 and 449 by initializing proper
variables

r19042:
In function H5O_chunk_protect (H5Ochunk.c):
 - Initialize H5O_chunk_proxy_t pointers chk_proxy and ret_value.
 - Free chk_proxy on error.

r19043:
Addressed coverity issues 442 - 448 by initializing pointers to NULL.

Tested on:
    Mac OS X/32 10.6.4 (amazon) w/debug & production
    (Too minor to require h5committest)
2010-07-29 14:07:26 -05:00
Larry Knox
10a8b060ca [svn-r19059] Brought changes from hdf5_1_8 to add version information for fortran and c++ compilers in libhdf5.settings file and configure output (r18836), to install examples as part of make install (r18680), and to provide scripts to compile and run the examples after they are installed (r18817).
Tested with new/h5committest on amani, heiwa, and jam.
2010-07-08 21:52:14 -05:00
Jonathan Kim
af749bafb7 [svn-r19051] Purpose:
Add --no-dangling-links option to h5ls. 

Description:
Related to "Bug 1830 - Following an dangling external link in h5ls should set non-zero return code."
If --no-dangling-links option is specified and any dangling link is found, return exit code 1 (error).

Tested:
 jam, amani and heiwa
2010-07-07 13:52:04 -05:00
Jonathan Kim
a5ca9e6ba9 [svn-r18873] Purpose:
Rename '--follow-links' to '--follow-symlinks' 

Description:
    The '--follow-links' option is to follow symbolic links (soft and external).
    Make the name more intuitive and specific to the feature.

Tested:
    jam, amani and linew
2010-05-21 15:12:22 -05:00
Allen Byrne
80e6dfe3ba [svn-r18856] Added CPack commands for installtion program
Tested: local linux and Windows
2010-05-19 15:11:00 -05:00
Allen Byrne
a6698e571c [svn-r18816] Move progname and d_status functions from h5tools to h5tools_util
Tested:
    linux and windows
2010-05-14 16:54:59 -05:00
Allen Byrne
ae06433ab0 [svn-r18793] Add files to support building library with CMake
Tested: Local linux
2010-05-13 11:01:50 -05:00
Allen Byrne
68fa42f336 [svn-r18759] pull r18757 from 1.8 branch
Enable tools lib to be built as a dll on windows. Added two get/set functions for progname and d_status.
Also add windows import/export declarations to functions.
Updated error_mesg() and warn_mesg() to remove progname argument and use get functions

Tested:
   Windows, linux
2010-05-11 15:10:25 -05:00
Mike McGreevy
f0ecd71307 [svn-r18709] Purpose:
Improve configure's large-file support control.

Description:

    Modified configure to now attempt to add defines necessary for
    supporting largefiles on all systems, instead of solely on linux. This 
    is in response to user requests to enable largefile support on Solaris 
    by default, as well as to give extra control on AIX (instead of just 
    jamming the necessary flag into the config files).

    The old --enable-linux-lfs flag has been removed in favor of the 
    --enable-largefile flag (enabled by default), which can be used on all
    platforms.

    On systems where large files cannot be supported in this manner,
    configure will report as such.

Tested:

    h5committest
    AIX (NCSA's blue_print machine)
    duty, liberty, and linew.
2010-05-05 12:34:26 -05:00
Jonathan Kim
249acc0355 [svn-r18614] Purpose:
Fix for bug 1817 : h5copy fail to copy dangling link by specifying 
    link path directly

Tested:
    jam, amani, linew
2010-04-22 13:17:35 -05:00
Mike McGreevy
0cf2a97cfb [svn-r18579] Purpose:
Autotool Upgrade / Libtool Bug Fix

Description:

    Updated autotools referenced in bin/reconfigure as follows:

    Autoconf 2.64 --> Autoconf 2.65
    Automake 1.11 --> Automake 1.11.1
    Libtool 2.2.6a --> Libtool 2.2.6b-mcg

    The referenced libtool version is a custom version of 2.2.6b. It 
    has been tweaked to fix a bug in libtool that occurs
    when using PGI 10.0 compilers. A check incorrectly categorizes
    the C++ compiler as version 1.0 instead of 10.0, and the link
    line is subsequently set up incorrectly and fails to compile.

    A patch has been made available and will be included in the next
    release of libtool, but in the meantime I've applied the patch to a custom
    installation as indicated above. This bin/reconfigure now references
    the custom installation, and the resulting configure script will correctly
    categorize the PGI 10.0 C++ compiler.

    Ran bin/reconfigure to regenerate configure and makefiles.

Tested:

    jam and amani with PGI 10.0 compilers.
    h5committest
2010-04-15 16:17:22 -05:00
Quincey Koziol
3dd92875b2 [svn-r18548] Description:
Minor cleanups to compile with PGI C compiler 10.x.

Tested on:
    Linux 2.4/32 (jam) w/PGI 10.x C and F90 compilers
2010-04-12 21:09:48 -05:00
Jonathan Kim
8c9b42fcf3 [svn-r18425] Purpose:
Fix for bug1814 - NPOESS: h5repack doesn't handle references to the groups 
    as an element of a dataset 

Description:
    handles object reference to named-datatype as well.
    Add test cases.

Tested:
    jam, amani, linew
2010-03-18 16:38:09 -05:00
Jonathan Kim
ee757e449b [svn-r18273] Purpose:
bugzilla 1754: h5diff: support comparing through links.

Description:
    Fix incorrect (or hanging) behavior in parallel mode when specifying 
    invalid combination of command options. 
    (ex: -v and -q , --no-dangling-links without --follow-links)
    Add relate test case
    Update h5diffgentest.c due to add test files this and previous time

Note:
    svn #18266 (prior to this)
    svn #18164 (original check-in)

Tested:
    h5committest (jam, amani and linew)
2010-02-18 11:51:12 -05:00
Jonathan Kim
ad9e876b0c [svn-r18266] Purpose:
bugzilla 1754: h5diff: support comparing through links.
    (original check-in svn revision #18164)
Description:
    fix the hang issue in parallel mode when compare external-link.
    add --no-dangling-links option. 
    add test cases (#450-#459) relate to the new option.
    improve test script to check exit code.
    update --help relate to the new options.
    correct some indentations.

Tested:
    h5committest (jam, amani and linew)
2010-02-16 14:43:05 -05:00
Quincey Koziol
fd70b2afa8 [svn-r18197] Description:
Trim trailing whitespace from source code files with this command:

find . \( -name "*.[ch]" -or -name "*.cpp" -or -name "*.f90" \) -print |xargs -n 1 sed -i "" 's/[[:blank:]]*$//'

Tested on:
    None - eyeballed only
2010-01-29 23:29:13 -05:00
Jonathan Kim
98639557ac [svn-r18166] Purpose:
Take care of test case fail for h5repack from checkin (r18164)

Description:
    Previous checkin didn't allow h5diff to return succeed when a link's 
    target object doesn't exist. Changed it to succeed with warning.
    (Need to discuss related feature)

Tested on Jam
2010-01-25 19:20:16 -05:00
Jonathan Kim
79cd5838d1 [svn-r18164] Purpose:
Add a feature to compare through links. Relate to bugzilla report 1754.

Description:
    Currently, h5diff command only compares the name(path) of target object 
    not the actual data. With this feature, h5diff will go through the link(s) 
    and figure out the actual object at the end of the link and compare data 
    if exist. Internally we have hard-link, soft-link, external-link (as part 
    of user_defined-link). This feature will provide a user transparent 
    experience when comparing link objects as the user can specify any of 
    those 3 type of links to be compared in any combination.

Tested on Jam.
2010-01-25 16:43:48 -05:00
Quincey Koziol
bb25c85e79 [svn-r18159] Description:
Bring Coverity fixes from 1/22/10 session to trunk:

r18137:
219: Initialized hid_t to -1 and added close to error block.
189-191: Initialized line to NULL and added free line, and close fp to error block.

r18138:
19: Moved code block for printing that the number of enums is empty to the error block. (Would never have been executed otherwise)

r18139:
Fix coverity item 58.  Moved code related to displaying the parent of a repeated
group to the else(isRoot) section, as the root group has no parent.

r18140:
218: Initialized ret_value variable to -1. Because of throw Exception in default case of switch, the coverity problem would not have executed anyway. Good pratice is to initialize variables.

r18141:
Fix coverity item 92.  Added code to H5E_register_class to free cls in case of
an error.

r18142:
Fix coverity item 91.  Added code to H5E_create_msg to free msg in case of an
error.

r18143:
fixed issue 14,
took away "if" and used #ifndef_xxx.

r18144:
Fix coverity item 110.   Added code to H5Eget_minor to free msg_str in case of
an error.

r18145:
fixed coverity #18 removed "aligned", it is always NULL.

r18146:
Fix coverity item 109.   Added code to H5Eget_major to free msg_str in case of
an error.

r18147:
Fixed coverity #81 and #82, Check for bad pointer(s), but can't issue error, just leave

r18148:
Fix coverity item 97.   Added code to H5FD_fapl_open to free copied_driver_info
in case of an error.

r18149:
Fix coverity item 96.   Added code to H5FD_dxpl_open to free copied_driver_info
in case of an error.

r18150:
Fix Coverity issue #29: Protected cache_ptr dereferences with "if(pass)"
block

r18151:
Fix coverity item 93.   Added code to H5FL_fac_init to free factory and new_node
in case of an error.

r18152:
Fix coverity items 98 and 99.   Added code free allocated space in case of
error.

r18155:
124: Freed head pointer before jumping to done. There was no error handling block and normal exit used same path out.
120-123: Freed list of lists in error handling block.

r18156:
Fix coverity issues 179, 180, 181, 182, 183, 184, 186, 320, 407.  These were resource leak issues where allocated memory was not freed, generally in the case of tests that failed.

Tested on:
    Mac OS X/32 10.6.2 (amazon) debug & production
2010-01-23 02:00:00 -05:00
Jonathan Kim
3c5dc1a808 [svn-r18134] Purpose:
Additional fix relted to the fix of bug1672.

Description:
    The fix of bug1672 caused some changes of output which required modifying
    some test cases.  After some discussion, restoring the changes of the test 
    cases was decided.  After many experiments for the solution, this fix was 
    made so the code which improved performance can stay.

Tested on Jam.
2010-01-21 15:01:42 -05:00
Jonathan Kim
a988519ad0 [svn-r18126] Fix for bug1749: Incorrect code in diff() function for links compare 2010-01-20 16:03:22 -05:00
Quincey Koziol
066294e321 [svn-r18109] Description:
Bring r18076-18096 from hdf5_1_8_coverity branch to trunk:

r18076:
Correct Coverity issue #1 by removing dead code

r18077:
Fix coverity item 142.  When an error occurred while copying a linked list in
H5S_point_copy, the library would not free the partially allocated list.  Added
code to free the list in this case.

r18078:
Correct Coverity issue #2 by removing impossible to reach code.

r18079:
Correct #3 by removing impossible to reach code.

r18080:
Correct Coverity issue #4 by removing impossible to reach code.

r18081:
fix coverity 26 , check (dblik->parent) before calls H5HF_man_iblock_detach().

r18082:
Fixed coverity issues 321 and 316.
    321: freed sm_buf in error handling to remove resource leak. 
        Also set sm_buf to NULL after other instances in which 
        it is freed to prevent double free.
    316: initialized nmembs to 0.

r18083:
Correct Coverity issue #6 by removing debugging knob from error reporting code.

r18084:
Fix coverity item 269 + others.  When a error occurred in a function using the
h5tools error framework, the "past_catch" variable would not be set to true
because that statement was before the label that goto jumped to.  This could
cause a failure in the cleanup section to go back to the start of the section,
freeing variables twice, etc.

Moved the label infront of past_catch=TRUE.

r18085:
fixed coverity #27, check if (heap) before use heap->obj....

r18086:
fixed coverity #28, check curr_span not null before use it at if(curr_span &&
    (io_bytes_left==0 || curr_seq>=maxseq))

r18087:
Correct Coverity issue #7 by cleaning up correctly on error

r18088:
Correct Coverity #8 by removing unchanged variable checking code.

r18089:
Correct Coverity issue #9 - remove impossible to reach code.

r18090:
Correct Coverity issue #11 by removing impossible to reach code.  Also clean
up some minor style issues.

r18091:
Fix coverity items 314 and 318.  Changed the improper assertion of the return
value of a library function to a check, and a return(void) on failure.

r18092:
Fix coverity item 70.  Changed the improper assertion of the return value of a
library function to a check, and a return(void) on failure.

r18093:
Correct Coverity issue #12 by removing dead code.

r18094:
Correct Coverity issue #16 by removing debugging code.

r18095:
Fixed coverity issue # 271.

Removed redundant checking and freeing of sm_buf1 and sm_buf2.

r18096:
Correct Coverity issue #17 by refactoring test to remove dead code.

    Also, removed previous "coverity" statements in comments, we'll review
those issues again and see if we can figure them out, now that we have more
experience with Coverity.

Tested on:
    Mac OS X/32 10.6.2 (amazon)
2010-01-14 22:05:59 -05:00
Albert Cheng
22da4232a4 [svn-r18107] bug 1673:
The mixed use of RUNTEST (original) and RUNTESTS (new) caused
confusion. E.g., the timings in test/ was still using the old
$RUNTEST.  It made more sense to use $RUNTEST which is used
by the dejagnu feature of automake.  So, I changed all
$RUNTEST or $RUNTESTS to $RUNEXEC.

config/commence.am & config/conclude.am are the two files
that got changes. Also fixed an error in test/Makefile.am.
The rest are changed by bin/reconfigure.

Tested: h5committested.
2010-01-12 18:58:30 -05:00
Quincey Koziol
9b2c4bea02 [svn-r18011] Description:
Bring Coverity changes into the trunk: (also other minor cleanups)

r17991:
Fix Coverity items 175 and 176.  Fixed memory leak on error in print_enum in
H5LT.c.

r17993: (r17992 was not a Coverity change)
Close Coverity issue #206: inconsistently checking whether dt->shared was
non-NULL after H5T_alloc() returned a valid 'dt' value (which should guarantee
that dt->shared is valid).

r17994:
Fix Coverity item 149.  Fixed file handle leak on error in H5FD_stdio_open.

r17995:
Fixed Coverity issues 154 to 161:

 Added H5MP_close routine to error handling in the event *mp has not been
 freed before error.

r17996:
Close Coverity issue #126: potentially leaking merged_spans on routine failure.

r17997:
Fix Coverity items 147 and 148.  Fixed resource leaks on error in H5FDloc.c.

r17998:
Coverity issue 269-272:
    Added integer result variable to functions that could return negative.
        Assigned to unsigned after checking.
    Added H5E_BEGIN_TRY block around H5Tclose and removed H5E_THROW in the
        catch block.
    Checked buffer is NULL before free. Changed HGOTO_ERROR outside of the if
        block to H5E_THROW.

r17999:
Close Coverity issue #127: release temporary spans in more generic manner.
(Also add error checking to previous fix)

r18000:
Resolved Coverity issues 211 and 212 in H5T.c. Added comments to ignore
Coverity warning regarding not checking pointer for NULL, as we are using
an assert which catches the issue.

r18001:
Fix Coverity item 146.  Fixed resource leak on error in H5O_layout_copy.

r18002:
Fix Coverity items 143 and 145.  Fixed resource leaks on error in
H5D_compact_copy and H5D_contig_copy.

r18003:
Close Coverity issue #192: close file on error

r18004:
Fix Coverity issue #125: release temporary spans on error

r18005:
Resolved Coverity issues 5, 25, and 83 (in H5T.c):

    Separated embedded functions in order to check for NULL on return of
        H5I_object before passing into H5T_copy.

    Check to see if new_dt is NULL within error handling before
        dereferencing it.

    Ignore Coverity's dead code warnings as the checks that lead to the code
        are machine dependent.

r18006:
Coverity 63,70,73:  Checked result of function before assigning to an unsigned
variable.

r18007:
Coverity 78,79:   added continue statement if H5Pget_filter2 returns negative.

r18008:
Fixed Coverity issue # 138:

    Added support in error handling to free dst pointer (if allocated) on error.

r18009:
Whitespace & coding style cleanup
2009-12-13 00:28:30 -05:00
Quincey Koziol
037dac6997 [svn-r17981] Description:
Abstract "print header" code into separate routine.

Tested on:
    Mac OS X/32 10.6.2 (amazon) w/debug
    (too minor to require h5committest)
2009-12-10 08:43:25 -05:00
Quincey Koziol
fb1059e507 [svn-r17953] Description:
Bring Coverity changes into the trunk:

r17877:
Error 266: Uninitialized memspace set to -1. Changed malloc and free to HDmalloc and HDfree. Removed unused dtype var.

r17878:
Error 265: Uninitialized mem_space set to -1. Changed malloc and free to HDmalloc and HDfree. 
Error 267: Uninitialized smspace set to -1. Changed malloc and free to HDmalloc and HDfree.

r17879:
Error 242: Uninitialized aid set to -1. 
Error 243: Uninitialized sid set to -1. 
Uninitialized tid set to -1 for consistency

r17880:
Error 242: reinitialized aid to -1 after close to be ready for reuse. 
Error 243: reinitialized sid to -1 after close to be ready for reuse. 
reinitialized tid to -1 for consistency after close to be ready for reuse.

r17881:
use valgrind to check there is a memory leak. The fix is to free ptrstr in line 5838 at xml_dump_group() of h5dump.c after it is used. run the valgrind after the fix, no memory leak for that part of the code.

r17882:
Fix Coverity items 256 and 269.

r17883:
Error 222-230: initialized hid_t vars to -1 after close to be ready for reuse. 
Also added H5Tclose for tid in gent_bigdims

r17884:
Bug fix (Coverity run2, view 23, dead code)
(this is pair-program done by Albert, Elena and Larry).

Confirmed and fixed the deadcode in hyperslab read branch of function
diff_datasetid.
(Discovered other bad code that diff_datasetid() should be recoded.  
Bug 1693 is entered for this.)

r17906:
Fix Coverity item 260.

r17907:
262: Initialized hid_t's dtype, dtype_tmp and file to -1. Initialized H5T_t * dt to NULL.

r17908:
Fix Coverity item 261.

r17909:
Fix Coverity item 248.

r17910:
Revise fix for Coverity item 248.

r17911:
Resolved coverity issues #s 263, 162, 163, 164. All issues in dsets.c. Initialized fid and did hid_t's. filter_corrupt function was returning in the middle of an if statement, bypassing free calls. Updated error handling to free buffers and hid_t's appropriately.

r17912:
(done by Larry and Albert)
Cleanup Coverity view warnings (#231-241) about
using uninitialized variables.  Initialized all
of them.

r17913:
Resolved issue 251 and 264. Initialized tid2 to -1 and initialized buffers that were freed in case of an error.

r17914:
Resolved coverity issues 66, 220, and 221: 

66: Negative Return assignment ignored

220,221: Initialized hid_t's.

r17915:
Fix Coverity item 247.

r17916:
Fix Coverity item 246.

r17917:
Fix Coverity item 245.

r17918:
Fix Coverity item 244.

r17919:
Coverity Issue #84: Moved asserts in H5T_cmp to the top of the function, and converted them to HDassert. Coverity complaining about using potentially NULL pointer without checking it. Want to see if Coverity will accept Assertions as acceptable checking before using the value. 

Tested on:
    FreeBSD/32 6.3 (duty) in debug mode
    FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
    Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
        w/C++ & FORTRAN, w/threadsafe, in debug mode
    Linux/64-amd64 2.6 (smirom) w/Intel compilers, w/default API=1.6.x,
        w/C++ & FORTRAN, in production mode
    Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
        w/szip filter, in production mode
    Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
    Mac OS X/32 10.6.2 (amazon) in debug mode
    Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-12-03 14:11:29 -05:00
Jonathan Kim
77b493eea3 [svn-r17938] Purpose:
Fix potential problem similar to Bug1672 (getting garbage values)

Description:
    This will resolve the potential problem like Bug1672 when comparing 
    attributes. It improves the performance by not calling diff_array 
    twice. (diffing time in half). Little clean up on comment lines.
    Refer to the Bug fix 1672. (also svn revision 17905 on trunk) 
	
Tested on:
    linux32 (jam) , linux64 (almani), solaris (linew)
2009-11-30 16:25:41 -05:00
Jonathan Kim
8bcc914263 [svn-r17905] Purpose:
Fix Bug1672 - Display garbage value on LE machine for BE data.

Description:
	Casuing by calling diff_dataset twice when -r or no option was given.
	Change to call it once which fix the problem. 
	It also improves the performance. (diffing time in half)
	According further test, it also occurred on BE machine as well and it 
	seems occruing only with the BE data attached to Bugzilla. 
	Don't know how the file was created. Anyway this fix will prevent 
	from diffing with garbage values in similiar potential case. 
	
Tested on:
	linux32 (jam) , linux64 (almani), solaris (linew)
2009-11-20 13:56:01 -05:00
Peter Cao
a8aa10bd21 [svn-r17680] Use absolute comparison for use-system-epsilon and default option. 2009-10-19 09:50:02 -05:00
Mike McGreevy
7ec079a515 [svn-r17616] Purpose:
CFLAGS overhaul

Description:

    Modified the way configure handles CFLAGS.

    (note: all changes also apply to FCFLAGS, CXXFLAGS, CPPFLAGS, and LDFLAGS).

    1. The configure process will now always preserve a user's CFLAGS
    environment variable setup. Any additional flags necessary for compilation
    added at configure time will be passed into the Makefiles as AM_CFLAGS,
    which is an automake construct to be used in addition to CFLAGS.

    This will allow a user to have the final say, as CFLAGS will always appear
    later in the compile line than AM_CFLAGS. Additionally, setting CFLAGS
    during make will no longer completely erase all flags set by configure,
    since they're maintained in AM_CFLAGS.

    2. Additionally, where possible, flags previously being assigned directly
    into CFLAGS (and thus propagating into h5cc) have now been redirected into
    H5_CFLAGS, so they're used ONLY for compiling hdf5, and not embedded into
    the h5cc wrapper script as well.

    *Note that H5_CFLAGS ultimately is assigned into AM_CFLAGS for use in the
    Makefiles. Complete description of changes and build process will be
    included in a Configure Document that Elena and I are working on.

    3. Removed unsupported config files. This includes:

       config/dec-osf*
       config/hpux11.00
       config/irix5.x
       config/powerpc-ibm-aix4.x
       config/rs6000-ibm-aix5.x
       config/unicos*

     4. Modified configure summary to display additional values. Specifically,
     appropriate AM_* variables are being shown, as well as H5_FCFLAGS and
     H5_CXXFLAGS, which were for some reason not already present.

Tested:

    - H5committest
    - Tested on all THG / NCSA machines, using several combinations of the more
      prominent configure options (c++, fortran, szip, threadsafe, parallel,
      et cetera). (Thanks to Quincey for rysnc testing setup!)
    - With regards to new automated testing, anything *necessary* for
      compilation will be caught by the daily tests as it stands now. (i.e.,
      if LDFLAGS is not properly set when szip is used, linking will fail).
      Additionally, with regards to which flags get into h5cc, if any
      *necessary* flags have been improperly removed, then daily tests should
      fail during make installcheck. Additional machine-specific desired
      behaviors and/or checks may have to be set up separately within the
      daily tests, so this is something to work on.
2009-10-08 10:17:30 -05:00
Allen Byrne
98f6b609ad [svn-r17566] Fix for Bug 1562. H5DSis_attached needed to account for platform dependent types. Added test and test files for LE and BE dimension scales. Reworked part of test_ds file as part of debug.
Added missing H5Tclose in region reference routines.
H5DS.c checked for other locations which need to account for platform dependent types in dealing with ds_list_t. Added generator program for test files of LE and BE dimension scales.

Tested: local linux, h5committest
2009-10-01 11:17:17 -05:00
Quincey Koziol
74c6507d9f [svn-r17518] Description:
Bring most of Vailin's changes to the fixed array data structure back
to the trunk, including new regression test for data structure.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-09-24 15:30:47 -05:00
Allen Byrne
d00707bf11 [svn-r17492] Moved printing of brackets before printing contents of region references.
Changed default Error handling init to successful as all error macros set the return to failure

Tested: local linux
2009-09-17 15:31:44 -05:00
Allen Byrne
cd3c2dea7b [svn-r17477] Corrected use of ERROR macro H5E_LEAVE to H5GOTO_DONE.
Tested: local linux
2009-09-14 16:48:32 -05:00
Allen Byrne
43db823044 [svn-r17475] Added error handling to h5dump and region reference handling functions in the tools lib. Bring back from NPOESS. Added missing tests to h5dump test script for region references.
Tested:   local linux
2009-09-14 14:52:42 -05:00
Peter Cao
5f3a7254c1 [svn-r17466] " Use strict equality as default
"   Use "--use-system-epsilon" for system EPSILON
"   Use "-p" or "-d" for whatever user's choice of epsilon
"   Use "-p 0" or "-d 0" for strict equality (same as default)
2009-09-11 15:09:34 -05:00
Allen Byrne
1cad9f4751 [svn-r17456] Added dataspace type check for region, changed dimension_break processing to use boolean.
Tested:
    local linux
2009-09-08 09:51:59 -05:00
Quincey Koziol
eae58095d0 [svn-r17455] Description:
Correct a 'hsize_t *' to 'hsize_t' and vice versa.

Tested on:
    Mac OS X/32 10.5.8 (amazon) in debug mode
    Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
    (too minor to require h5committest)
2009-09-08 08:03:38 -05:00
Allen Byrne
c7590ca38e [svn-r17450] Bring h5dump single subsetting selection and region reference changes from NPOESS
Tested: local linux smirom
2009-09-04 09:50:13 -05:00
Mike McGreevy
4598a59f86 [svn-r17345] Purpose:
Updating autotools

Description:

    Installed new autotools and used them to reconfigure HDF5.

    - Automake upgraded to 1.11
    - Autoconf upgraded to 2.64
    - bin/reconfigure script edited to use new versions (on jam), and
      run to generate new configure script and Makefile.in's.
    - configure.in script edited to add "_cv_" to all AC_CACHE_VAL strings
      (in order to comply with new autoconf standard).
    
Tested:

    Tested on machines jam, smirom, liberty, linew.
    Tested w/ features c++, fortran, parallel.
    Tested w/ compilers gcc, pgcc, icc.

    Further testing via Daily Tests should catch any other outliers. Upon
    passing DT's, I'll propogate the new tools into 1.8, hdf4, et cetera.
2009-08-12 13:55:25 -05:00
Peter Cao
a6676de3c8 [svn-r17254] Fixed Bug 1563 - h5diff and Infinity
Added test cases
2009-07-28 14:40:18 -05:00
Allen Byrne
f5be06c397 [svn-r17211] The function h5tools_str_append() incorrectly used the trio of functions: va_start(), HDvsnprintf(), and va_end(). When the boundary of the string buffer was reached and resized, the HDvsnprintf() function recalled without the other two functions in the code loop. This usage exposed bug 1520 by a user.
Tested: linux
2009-07-21 14:44:54 -05:00
Pedro Vicente Nunes
aad47d8e8b [svn-r17052] Add a run to the h5repack shell script to read a family file
The file used for input is located in the common source tools for testfiles, in tools/testfiles
Modified the h5repack shell script to read files from this location (h5repack reads its input files from a dedicated testfiles location in h5repack/testfiles)
Changed the h5diff open file call to use h5tools_fopen, so that it can open all file drivers

Tested: windows, linux, solaris
2009-06-15 14:05:42 -05:00
Pedro Vicente Nunes
358f18543f [svn-r16991] change messages of -c option
tested: windows, linux
2009-05-28 16:31:57 -05:00
Pedro Vicente Nunes
b75740341f [svn-r16964] bug fix: the phrase "Not comparable" was not being printed for the case of different classes
tested: windows, linux
2009-05-20 09:07:22 -05:00
Pedro Vicente Nunes
c60f5a8429 [svn-r16810] added the words "Not comparable" in the not comparable messages
tested: linux
2009-04-20 15:59:40 -05:00
Mike McGreevy
bc36a358d1 [svn-r16792] Description:
- Updated bin/reconfigure to use latest version of automake (1.10.2). 
      Re-generated Makefile.in's by running bin/reconfigure.

    - Added libtool version numbers to c++, fortran, hl, hl c++, and hl fortran
      libraries.

Tested:

    jam, liberty, smirom
2009-04-20 01:00:11 -05:00
Pedro Vicente Nunes
ceffce7203 [svn-r16785] added missing test and compare cases inside compounds for nan
tested: linux
2009-04-18 15:55:24 -05:00
Neil Fortner
a4aae55760 [svn-r16698] Purpose: Fix bug 503
Description:
Changed Skip list package to use a deterministic skip list.  This allows the
skip list package to avoid calling rand() and srand(), even on machines without
rand_r().  There is no longer a p-value or maximum level for skip lists.

Tested: jam, smirom, linew (h5committest)
2009-04-08 12:02:09 -05:00
Pedro Vicente Nunes
972a1bba5d [svn-r16629] removed a h5dump test (array type) that has a different bogus output in frebsd (liberty)
removed  the call to the file generation in the test generation program
removed the binary h5 and ddl from svn

tested: linux
2009-03-30 16:47:29 -05:00
Pedro Vicente Nunes
bd1fe8cd74 [svn-r16614] 3. #1501 (B1) tools bug if dataset is larger than H5TOOLS_BUFSIZE limit.
ISSUE : the tools use the following formula to read by hyperslabs: hyperslab_size[i] = MIN( dim_size[i], H5TOOLS_BUFSIZE / datum_size) where H5TOOLS_BUFSIZE is a constant defined of 1024K. This is OK as long as the datum_size does not exceed 1024K, otherwise we have a hyperslab size of 0 (since 1024K/(greater than 1024K) = 0). This affects h5dump. h5repack, h5diff
SOLUTION: add a check for a 0 size and define as 1 if so. 
TEST FOR H5DUMP: Defined a case in the h5dump test generator program of such a type (an array type of doubles with a large array dimension, that was the case the user reported).  Since the written file commited in svn would be around 1024K, opted for not writing the data (the part of the code where the hyperslab is defined is executed, since h5dump always reads the files). Defined a macro WRITE_ARRAY to enable such writing if needed. Added a run on the h5dump shell script. Added 2 new files to svn: tools/testfiles/tarray8.ddl, tools/testfiles/tarray8.h5. NOTE: while doing this I thought of adding this dataset case to an existing file, but that would add the large array output to those files (the ddls). The issue is that the file list is increasing.
TEST FOR H5DIFF: for h5diff the check for reading by hyperslabs is H5TOOLS_MALLOCSIZE (128 * H5TOOLS_BUFSIZE) or 128 Mb. This makes it not possible to add such a file to svn, so used the same method as h5dump (only write the dataset if WRITE_ARRAY is defined). As opposed to h5dump, the hyperslab code is NOT executed when the dataset is empty (dataset is not read). Added the new dataset to existing files and shell run (tools/h5diff/testfiles/h5diff_dset1.h5 and tools/h5diff/testfiles/h5diff_dset2.h5 and output in tools/h5diff/testfiles/h5diff_80.txt).
TEST FOR H5REPACK: similar issue as h5diff with the difference that the hyperslab code is run. Added a run to the shell script (with a filter, otherwise the code uses H5Ocopy). 

tested: linux (h5commitest failed , apparently it did not detect the code changes in /tools/lib that fix the bug: the error in an assertion in the hyperslab of 0. I am sure that making h5ccomitest --distclean will detect the new code , but don't want to wait more 3 hours :-) )
2009-03-25 15:28:50 -05:00
Mike McGreevy
893b8bffee [svn-r16561] Purpose:
Bug Fix

Description:

    Fixing BZ #1381. The --includedir=DIR configure option, which is used
    to specify the installation location of C header files, did not work
    correctly as the path was hard-coded in config/commence.am. I'm presuming
    this is because an older version of automake didn't know where to put
    c header files. In any case, removing this line now defaults the includedir
    to the same directory that it is currently hard-coded to, and also fixes
    the configure flag to allow customization of this value.

Tested:

    jam, liberty
2009-03-10 16:01:50 -05:00
Pedro Vicente Nunes
f8c5384aa5 [svn-r16518] have 2 expected outputs for 2 h5ls runs depending if run on a big or little endian machine. Configure.in was modified to export a variable carrying endianess information to testh5ls.sh. This script then compares the current run with 2 expected outputs, one for a big-endian machine (linew was used to generate the output), other for little endian (jam was used to generate the output)
the way h5ls prints types, it starts searching for NATIVE types first. One solution would be h5ls not to detect these native types, using for example the same print datatype function that h5dump does, that would make the output look the same on all platforms  ("32-bit little-endian integer" would be printed instead).  Drawback, this "native" information would not be available. Other solution is to have not one but 2 expected outputs and make the shell script detect the endianess and compare with one output or other
tested: h5committest
2009-02-26 15:21:50 -05:00
Pedro Vicente Nunes
11e7897d32 [svn-r16502] bug fix: a comma accidently left on a conditional typedef was causing compilition error on AIX
tested: h5commitest
2009-02-20 16:07:34 -05:00