summaryrefslogtreecommitdiffstats
path: root/src/H5.c
Commit message (Collapse)AuthorAgeFilesLines
* Develop normalization with vol_integration.Dana Robinson2018-09-191-10/+10
| | | | | Mostly peripheral things like the tools and wrappers, with just enough core library code to support that.
* Fixed HDFFV-10404Binh-Minh Ribler2018-07-131-2/+2
| | | | | | | | | Description: Applied the typo fixes from user's report. The previous pull request couldn't be merged because it was too old, and it was too complicated for me to resolve conflicts. Platform tested: Linux/64 (jelly) - very minor
* Resolve memory leak of last API context, by freeing it in H5CX terminateQuincey Koziol2018-04-181-2/+1
| | | | routine.
* Revert "Close memory leak of last API context when shutting library down."Quincey Koziol2018-04-181-2/+2
| | | | This reverts commit 0bd3634dc5747d88582a966050896bad57acb892.
* Close memory leak of last API context when shutting library down.Quincey Koziol2018-04-171-2/+2
|
* Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into ↵Quincey Koziol2018-03-181-19/+17
|\ | | | | | | | | | | merge_func_enter_vol Plus initial steps toward merging API context push into FUNC_ENTER_API* macros
| * Normalization with VOL integration branch.Dana Robinson2017-12-051-12/+12
| |
* | Add API context interface and use it throughout the library.Quincey Koziol2018-03-151-2/+12
|/
* Normalization with VOL integration branch.Dana Robinson2017-12-011-0/+1
|
* Normalization with VOL integration branch.Dana Robinson2017-11-301-58/+7
|
* Fix for HDFFV-10160Vailin Choi2017-06-291-0/+7
| | | | Modifications to fix the assertion/abort failure when the application does not close the file.
* Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to ↵Larry Knox2017-04-251-6/+4
| | | | | | | | | | hdf5_1_10 * commit '54957d37f5aa73912763dbb6e308555e863c43f4': Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes. Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh. Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1 Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
* Fixed problems that prevent bin/trace from marking up some functions.Dana Robinson2017-04-211-3/+3
|
* [svn-r29350] Revert h5check_version change to check LT_VERS_XXXX numbers ↵Larry Knox2016-03-081-130/+0
| | | | | | | | | | | | | | | | | rather than HDF5 library version numbers. Svn revisions reverted: 29341, 29326 Branch features/h5check_version was created for further development. Files changed test/tcheck_version.c test/testcheck_version.sh.in src/H5public.h src/H5.c config/lt_vers.am bin/h5vers Tested with h5committest.new
* [svn-r29326] HDFFV-9536: Changed H5check_version() to use libtool shared ↵Albert Cheng2016-03-071-0/+130
| | | | | | | | | | | | | | | | | | | | | | | | library version numbers instead of the library version numbers. bin/h5vers: Changed to copy the shared lib version from lt_vers.am to H5public.h (Thanks to Larry who made the changes.) config/lt_vers.am: cosmetic change, nothing material. src/H5public.h: Changed by bin/h5vers. src/H5.c: Changed H5check_version() to use shared library version for compatibility checking. test/tcheck_version.c: test/testcheck_version.sh.in: Changed to use shared library version numbers instead of the HDF5 library version numbers for testing. Tested: tested in Jam (C only), platypus and osx1010dev (enable fortran and C++).
* [svn-r29182] Re-commit of HDFFV-8740 fix, which adds the ability to configureDana Robinson2016-02-221-1/+2
| | | | | | | | | | | | external dataset storage path behavior. This check-in fixes a bug in the original check-in where the external path stored in the file struct was not copied on reopen causing subsequent dataset operations to fail. Tested on: 64-bit Ubuntu 15.10 (Linux 4.2.0 x86_64) gcc 5.2.1 autotools serial w/ fortran and C++ autotools parallel (MPICH 3.1.4) w/ fortran
* [svn-r29084] Revert of:Dana Robinson2016-02-111-2/+1
| | | | | | | | | | | | | | | r29069 and 72 (gheap cleanup) r29041 and 43 (HDFFV-8740 external storage) These cause problems in the daily tests. They will be re-introduced when their respective problems have been addressed. Tested on: 64-bit Ubuntu 15.10 (Linux 4.2.0 x86_64) gcc 5.2.1 autotools serial (check-vfd) w/ Fortran and C++ autotools parallel w/ Fortran CMake serial
* [svn-r29041] Patch from Steffen Kiess that allows a relative path to be ↵Dana Robinson2016-02-041-1/+2
| | | | | | | | | | | specified for external dataset files set via H5Pset_external(). Resolves HDFFV-8740 Tested on: 64-bit Ubuntu 15.10 (Linux 4.2.0 x86_64) gcc 5.2.1 autotools serial
* [svn-r28996] Autotools configure updates to allow separation of build type, ↵Dana Robinson2016-01-271-64/+69
| | | | | | | | | | | | | | debug symbols, asserts, profiling, and optimization. Also much refactoring, improved help, and --enable-<foo> options will now emit errors on nonsense (e.g.: --enable-foo="asdfasdf"). The libhdf5.settings.in file was also reformatted. Tested on: 64-bit Ubuntu 15.10 (Linux 4.2.0 x86_64) gcc 5.2.1 serial and parallel autotools w/ various options
* [svn-r28777] Description:Quincey Koziol2016-01-031-0/+5
| | | | | | | | | | Add --enable-memory-alloc-sanity-check option to configure, to track and sanity check memory allocations within the library. This is orthogonal to the --enable-using-memchecker option and can be used with/without it. Tested on: MacOSX/64 10.11.2 (amazon) w/serial & parallel (h5committest forthcoming)
* [svn-r28761] Description:Quincey Koziol2016-01-011-4/+1
| | | | | | | | | | | | Clean up many mismatches between malloc/free and H5MM_malloc/H5MM_xfree in the library and tests (and use of H5free_memory and H5Dvlen_reclaim). Also make H5Ocopy use a private version of H5Lexists, which doesn't internally throw (and suppress) errors when an object (or the path to it) isn't found in the destination. Tested on: MacOSX/64 10.11.2 (amazon) w/serial & parallel (h5committest forthcoming)
* [svn-r27879] Move property list shutdown earlier in H5_term_library, since ↵Neil Fortner2015-09-251-4/+8
| | | | | | | | with VDS layout it needs to call into the H5D package. Tested: ummon
* [svn-r27834] Description:Quincey Koziol2015-09-211-1/+1
| | | | | | | | Close FAPL for external link test, to fix infinite loop closing the library. Tested on: MacOSX/64 10.10.5 (amazon) w/serial (too minor to require h5committest)
* [svn-r27768] Description:Quincey Koziol2015-09-141-8/+43
| | | | | | | | | | | | | | | | | | | | | | Complete revamp of package initialization/shutdown mechanism in the library. Each package now has a single init/term routine. This new way should avoid packages being re-initialized during library shutdown and is also be _much_ more proactive about giving feedback for resource leaks internal to the library. Introduces a new "module" header file for packages in the library (e.g src/H5Fmodule.h) which sets up some necessary package configuration macros for the FUNC_ENTER/LEAVE macros. (The VFL drivers have their own slightly modified version of this header, src/H5FDdrvr_module.h) Also cleaned up a bunch of resources leaks all across the library and tests, along with addressing many warnings, as I encountered them. Tested on: MacOSX/64 10.10.5 (amazon) w/serial & parallel Linux/64 3.10.x (kituo) w/serial & parallel Linux/64 2.6.x (ostrich) w/serial
* [svn-r27601] Removed the H5TSprivate.h include from H5.c. It's not needed ↵Dana Robinson2015-08-271-1/+0
| | | | | | | | and causes problems on Windows. Tested on: jam, with and without --enable-threadsafe
* [svn-r27587] Added a new API call (H5is_library_threadsafe) to the library. ↵Dana Robinson2015-08-261-9/+39
| | | | | | | | | | This call can be used to determine at runtime if the library was built with thread-safety. Fixes HDFFV-9496 Tested on: h5committest
* [svn-r27427] - free comm keyval after setting atribute on comm_selfMohamad Chaarawi2015-07-231-0/+3
| | | | | | - free allocated buffer in t_file_image test tested on jam with parallel.
* [svn-r27162] fix for HDFFV-9412:Mohamad Chaarawi2015-06-081-11/+15
| | | | | | | - Check for mpi is_initialized and is_finalized before making MPI calls in init/terminate of HDF5. - Add a test to make sure we can make serial HDF5 calls from rank 0 after MPI_Finalize is called. tested with h5committest
* [svn-r27133] - Add a new attribute function characterstic for format:Mohamad Chaarawi2015-06-011-1/+1
| | | | | | | | * H5_ATTR_FORMAT(X,Y,Z) __attribute__((format(X, Y, Z))) - Rename UNUSED attribute characterstic to H5_ATTR_UNUSED. - Rename NORETURN attribute characterstic to H5_ATTR_NORETURN tested with h5committest.
* [svn-r26392] Reinstates r26327-8, which had been reverted due to failures onDana Robinson2015-03-091-3/+86
| | | | | | | | | | | | | | Solaris and OS X. Added public API functions that expose the C library's memory allocator for use in filter functions that need to allocate or resize buffers. Intended for use with filter plugins, particularly on Windows, where C runtime (CRT) issues can cause problems. Fixes: HDFFV-9100 Tested on: h5committest + OS X (quail) + Solaris (emu)
* [svn-r26331] Revert checking r 26327&8, which added new code and test that ↵Larry Knox2015-02-281-86/+3
| | | | | | fails on solaris and macs. Tested h5committest + emu and quail.
* [svn-r26327] Added public API functions that expose the C library's memory ↵Dana Robinson2015-02-271-3/+86
| | | | | | | | | | | | allocator for use in filter functions that need to allocate or resize buffers. Intended for use with filter plugins, particularly on Windows, where C runtime (CRT) issues can cause problems. Fixes: HDFFV-9100 tested on: jam (minor, localized change)
* [svn-r26279] re-commit 26260 that Dana moved out fixing the versioning of ↵Mohamad Chaarawi2015-02-231-19/+61
| | | | functions to work with v16 default API.
* [svn-r26271] Reverse merge of r26260 which was causing daily test failures.Dana Robinson2015-02-221-61/+19
| | | | Tested on: jam w/ parallel and fortran
* [svn-r26260] - add an attribute callback to call H5_term_library when ↵Mohamad Chaarawi2015-02-201-19/+61
| | | | | | | | | MPI_COMM_SELF is destroyed. - add tests for above. - this is a fix for HDFFV-883. tested h5committest
* [svn-r25274] Adds #defines that ensures that DllMain is only compiled in ↵Dana Robinson2014-06-131-2/+6
| | | | | | | | when the thread-safe shared library is built on Windows. Fixes HDFFV-8837. Tested on 64-bit Windows 7 with VS2012.
* [svn-r24961] Updates to Win32 thread-local storage cleanup when the ↵Dana Robinson2014-04-041-3/+70
| | | | | | | | | | | thread-safe library is built on Windows. Previously, thread-local storage was not cleaned up, causing resource leaks. Fixes HDFFV-8518, HDFFV-8699 As a part of these changes, the thread-safe + static library options are declared unsupported since the solution relies on DllMain. A solution for the static library is probably doable, but requires much more complicated surgery and has been deferred to HDF5 1.8.14. Tested on: 64-bit Windows 7 using VS 2012 (changes only affect Windows)
* [svn-r24937] Adds an H5free_memory() function to the library for use withDana Robinson2014-03-311-0/+25
| | | | | | | | | | | | 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)
* [svn-r24285] Eliminate several "passing argument ... with different width ↵Larry Knox2013-10-101-1/+1
| | | | | | due to prototype" warnings by casting constants to size_t where expected by string functions. Tested on jam, koala,ostrich and platypus with h5committest.
* [svn-r23713] Description:Quincey Koziol2013-05-211-2/+2
| | | | | | | | | | Clean up warnings, switch library code to use Standard C/POSIX wrapper macros, remove internal calls to API routines, update checkapi and checkposix scripts. Tested on: Mac OSX/64 10.8.3 (amazon) w/C++ & FORTRAN Big-Endian Linux/64 (ostrich)
* [svn-r23346] First commit for DESY project. It has the basic functionality ↵Raymond Lu2013-03-131-0/+1
| | | | | | of loading dynamically filter libraries and a simple test for it. Tested on koala.
* [svn-r23219] Description:Quincey Koziol2013-02-021-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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)
* [svn-r22324] Description:Quincey Koziol2012-04-291-1/+1
| | | | | | | | Change name of MPE log file produced from "cpilog" (which was the name used in the example code we were referencing) to "h5log". Tested on: None, too trivial, eyeballed only...
* [svn-r21919] Description:Quincey Koziol2012-02-091-8/+8
| | | | | | | | Refactor function name macros and simplify the FUNC_ENTER macros, to clear away the cruft and prepare for further cleanups. Tested on: Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
* [svn-r20536] Description:Quincey Koziol2011-04-171-3/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* [svn-r19481] I'm backing out my fix for bug 1707 because there're some ↵Raymond Lu2010-09-271-6/+3
| | | | | | | | | | | unresolved issues - r19441 and 19467. Bug 1707 is that H5Eset_auto causes a seg fault when an application uses -DH5_USE_16_API with the 1.8 library to compile. I created a branch off the trunk called set_auto to continue working on the problem. Tested on jam - backing out, simple.
* [svn-r19457] Bug fix for 1707 - H5Eset_auto causes a seg fault when an ↵Raymond Lu2010-09-211-3/+6
| | | | | | | | | | | | | application uses -DH5_USE_16_API with the 1.8 library to compile. The cause is from the mismatch of H5Eprint1 and H5Eprint2 set through H5Eset_auto. I changed the union in the structure H5E_auto_t. Another change is to make H5Eget_auto fail if H5Eset_auto is called to set the printing function. I'll write a document for it. Tested on heiwa, jam, and amani. The property change in configure.in, config, and Makefile.am came from the merge of the 1.8 library change.
* [svn-r18492] Bug fix:Albert Cheng2010-04-011-2/+0
| | | | | | | | | | | | | | | | | Testlibinfo.sh failed again. Solution: Removed the const from H5libhdf5_settings definition, again. Revamp the whole setting so that H5lib_settings.c is compiled individually, just like H5Tinit.c. Hope this will take care of the problem once for all. Tested: Jam using --disable-shared with --enable and --disable-embedded-libinfo. Will test this on the AIX platform after commit (cannot run bin/reconfigure in the AIX platform and it is too clumsy to try to ssh files back and forth and incurred "svn merge inconsistency" later too. Pretty confident this fix should work in all other platforms.
* [svn-r18475] Description:Quincey Koziol2010-04-011-0/+1
| | | | | | | | | | | | | | | | | | Fix dependency issue and non-C99 coding goof. 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, 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
* [svn-r18474] Description:Quincey Koziol2010-03-311-1/+1
| | | | | | | | | Switch back to generating a .h file for the library settings. Also, tart it up a bit to avoid multiple inclusions, etc. Tested on: Mac OS X/32 10.6.3 (amazon) w/debug & production FreeBSD/32 6.3 (duty)