diff options
author | Robb Matzke <matzke@llnl.gov> | 1999-02-18 16:21:34 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1999-02-18 16:21:34 (GMT) |
commit | 37cfaf1665f1a036c4a907367c7e25b7ac849013 (patch) | |
tree | cbdea15114da44de5f1d74057fdb8de449d18f41 /src/H5.c | |
parent | 901051cecb91bffb1920c0b31bec2f0661363a1a (diff) | |
download | hdf5-37cfaf1665f1a036c4a907367c7e25b7ac849013.zip hdf5-37cfaf1665f1a036c4a907367c7e25b7ac849013.tar.gz hdf5-37cfaf1665f1a036c4a907367c7e25b7ac849013.tar.bz2 |
[svn-r1078] Changes since 19990215
----------------------
./src/H5.c
Fixed more dependency problems in H5_term_library(). There was
a bug in the previous version that could cause the wrong EOF
marker to be written to the boot block under certain
circumstances. Hopefully this fixes it although I don't ready
access to a test case (Mark Miller will test it).
./src/H5F.c
./src/H5Fprivate.h
Added an H5F_close_all() that is similar to
H5F_term_interface() but which doesn't close the
interface. Files that don't have open object headers are
closed, others are delayed until all object headers close. All
files are flushed.
./src/H5ACprivate.h
./src/H5Bprivate.h
./src/H5Dprivate.h
./src/H5Eprivate.h
./src/H5Fprivate.h
./src/H5Gpkg.h
./src/H5Gprivate.h
./src/H5Gpublic.h
./src/H5HGprivate.h
./src/H5HLprivate.h
./src/H5Iprivate.h
./src/H5MFprivate.h
./src/H5MMprivate.h
./src/H5Oprivate.h
./src/H5Pprivate.h
./src/H5Ppublic.h
./src/H5RAprivate.h
./src/H5Sprivate.h
./src/H5Spublic.h
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
./src/H5Vprivate.h
./src/H5Zprivate.h
./src/H5private.h
./src/H5public.h
Reindented after __DLL__ was added.
Diffstat (limited to 'src/H5.c')
-rw-r--r-- | src/H5.c | 12 |
1 files changed, 7 insertions, 5 deletions
@@ -148,11 +148,13 @@ H5_term_library(void) * because it's cache depends on almost all other meta object * packages and those packages depend on H5O which depends on H5F * (because H5F_close() can delay until all object headers are - * closed). We handle this cycle by closing the H5F interface, - * which flushes the cache of all files, breaking any cycles. + * closed). We handle this cycle by calling H5F_close() for all + * files, which flushes the meta data caches and updates the file + * boot block but doesn't actually finalize the close until all + * open objects are closed by the H5*_term_interface() functions + * below. Once that happens we can close the H5F interface. */ - H5F_term_interface(-1); - H5F_term_interface(0); + H5F_close_all(); /* Function What depends on it? */ /*------------------------- ------------------------------- */ @@ -166,8 +168,8 @@ H5_term_library(void) H5S_term_interface(-1); /* */ H5T_native_close(-1); /* D RA */ H5T_term_interface(-1); /* D RA */ - H5F_term_interface(-1); /* G T */ H5P_term_interface(-1); /* D */ + H5F_term_interface(-1); /* A D G S T */ H5I_term_interface(-1); /* A D F G P RA S T TB Z */ /*------------------------- --------------------------------- */ |