summaryrefslogtreecommitdiffstats
path: root/src/H5.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/H5.c')
-rw-r--r--src/H5.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/H5.c b/src/H5.c
index 96b4a5b..cf1ad6b 100644
--- a/src/H5.c
+++ b/src/H5.c
@@ -139,7 +139,7 @@ H5_init_library(void)
int key_val;
if(MPI_SUCCESS != (mpi_code = MPI_Comm_create_keyval(MPI_COMM_NULL_COPY_FN,
- (MPI_Comm_delete_attr_function *)H5_mpi_delete_cb,
+ (MPI_Comm_delete_attr_function *)H5_mpi_delete_cb,
&key_val, NULL)))
HMPI_GOTO_ERROR(FAIL, "MPI_Comm_create_keyval failed", mpi_code)
@@ -207,7 +207,7 @@ H5_init_library(void)
* The link interface needs to be initialized so that link property lists
* have their properties registered.
* The FS module needs to be initialized as a result of the fix for HDFFV-10160:
- * It might not be initialized during normal file open.
+ * It might not be initialized during normal file open.
* When the application does not close the file, routines in the module might
* be called via H5_term_library() when shutting down the file.
*/
@@ -344,7 +344,9 @@ H5_term_library(void)
pending += DOWN(AC);
pending += DOWN(Z);
pending += DOWN(FD);
- pending += DOWN(PL);
+ /* Don't shut down the plugin code until all "pluggable" interfaces (Z, FD, PL) are shut down */
+ if(pending == 0)
+ pending += DOWN(PL);
/* Don't shut down the error code until other APIs which use it are shut down */
if(pending == 0)
pending += DOWN(E);
@@ -651,7 +653,7 @@ H5_debug_mask(const char *s)
/*-------------------------------------------------------------------------
* Function: H5_mpi_delete_cb
*
- * Purpose: Callback attribute on MPI_COMM_SELF to terminate the HDF5
+ * Purpose: Callback attribute on MPI_COMM_SELF to terminate the HDF5
* library when the communicator is destroyed, i.e. on MPI_Finalize.
*
* Return: MPI_SUCCESS
@@ -897,7 +899,7 @@ H5close(void)
* Return:
*
* Success: A pointer to the allocated buffer.
- *
+ *
* Failure: NULL
*
*-------------------------------------------------------------------------
@@ -938,7 +940,7 @@ H5allocate_memory(size_t size, hbool_t clear)
* Return:
*
* Success: A pointer to the resized buffer.
- *
+ *
* Failure: NULL (the input buffer will be unchanged)
*
*-------------------------------------------------------------------------
@@ -999,7 +1001,7 @@ H5is_library_threadsafe(hbool_t *is_ts)
H5TRACE1("e", "*b", is_ts);
HDassert(is_ts);
-
+
/* At this time, it is impossible for this to fail. */
#ifdef H5_HAVE_THREADSAFE
*is_ts = TRUE;