Commit Graph

6 Commits

Author SHA1 Message Date
Quincey Koziol
1023374492 [svn-r27768] Description:
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
2015-09-13 22:58:59 -05:00
Mohamad Chaarawi
fc45d5fcb0 [svn-r27133] - Add a new attribute function characterstic for format:
* 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.
2015-06-01 14:38:09 -05:00
Quincey Koziol
30a52dd1a2 [svn-r17838] Description:
Further refactoring of v2 B-tree code, moving toward being able to pass
a context information to a client's encode/decode callbacks.

	Also, clean up of other minor compiler warnings and code formatting
issues.

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.1 (amazon) in debug mode
        Mac OS X/32 10.6.1 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2009-11-05 08:45:35 -05:00
Neil Fortner
e9f3b20b64 [svn-r15515] Fix faulty error checking in call to H5I_remove().
Add prototype to the top of app_ref.c to suppress warning.

Tested: kagiso
2008-08-21 17:38:46 -05:00
Neil Fortner
9dbe3467d7 [svn-r15505] Change the names of some macros in app_ref.c to prevent warnings on Windows.
Tested: kagiso
2008-08-21 11:49:29 -05:00
Neil Fortner
a59d91d192 [svn-r15485] Purpose: Allow library to shut down properly when objects have reference count
> 1.

Description: Added a new field 'app_count' to H5I_id_info_t struct, to track
    the reference count on an id due to the application.  the old 'count' field
    tracks the total.  Generally any id visible to the application gets placed
    in app_count.  Added app_ref boolean parameter to H5I_inc_ref, H5I_dec_ref,
    H5I_register, H5I_clear_type, and a few other functions, to specify whether
    the operation(s) being performed on the id(s) are due to the application
    (TRUE) or not (FALSE).  Test added for this case.

Tested: kagiso, smirom, linew (h5committest)
2008-08-19 11:35:16 -05:00