summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeil Fortner <nfortne2@hdfgroup.org>2015-09-25 21:48:11 (GMT)
committerNeil Fortner <nfortne2@hdfgroup.org>2015-09-25 21:48:11 (GMT)
commitdbdc9c1e2bd319e67659303c4d2b3e4c8eff5b07 (patch)
tree9f27d0c886536f1d124fbc549abb1454efd4a2a3
parent10837a2a28d0fd2a1ece51f89af286bafd20204a (diff)
downloadhdf5-dbdc9c1e2bd319e67659303c4d2b3e4c8eff5b07.zip
hdf5-dbdc9c1e2bd319e67659303c4d2b3e4c8eff5b07.tar.gz
hdf5-dbdc9c1e2bd319e67659303c4d2b3e4c8eff5b07.tar.bz2
[svn-r27879] Move property list shutdown earlier in H5_term_library, since with VDS layout it
needs to call into the H5D package. Tested: ummon
-rw-r--r--src/H5.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/H5.c b/src/H5.c
index 1bb75ad..33ac340 100644
--- a/src/H5.c
+++ b/src/H5.c
@@ -284,12 +284,12 @@ H5_term_library(void)
n) : n))
do {
- pending = 0;
+ pending = 0;
/* Try to organize these so the "higher" level components get shut
* down before "lower" level components that they might rely on. -QAK
*/
- pending += DOWN(L);
+ pending += DOWN(L);
/* Close the "top" of various interfaces (IDs, etc) but don't shut
* down the whole interface yet, so that the object header messages
@@ -300,7 +300,7 @@ H5_term_library(void)
pending += DOWN(A_top);
pending += DOWN(D_top);
pending += DOWN(G_top);
- pending += DOWN(R_top);
+ pending += DOWN(R_top);
pending += DOWN(S_top);
pending += DOWN(T_top);
@@ -308,6 +308,11 @@ H5_term_library(void)
if(pending == 0)
pending += DOWN(F);
+ /* Don't shut down the property list code until all objects that might
+ * use property lists are shut down */
+ if(pending == 0)
+ pending += DOWN(P);
+
/* Wait to shut down the "bottom" of various interfaces until the
* files are closed, so pieces of the file can be serialized
* correctly.
@@ -333,7 +338,6 @@ H5_term_library(void)
if(pending == 0) {
pending += DOWN(AC);
pending += DOWN(Z);
- pending += DOWN(P);
pending += DOWN(FD);
pending += DOWN(PL);
/* Don't shut down the error code until other APIs which use it are shut down */