summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Kuhn <michael.kuhn@ovgu.de>2020-10-05 13:27:24 (GMT)
committerMichael Kuhn <michael.kuhn@ovgu.de>2020-10-05 13:27:24 (GMT)
commitf57cc4a702812b1e0a67cbde407894b58bb31181 (patch)
tree44bead02d33bd734c54b4ccb5e8f4ef852b04856
parent9df906126f5d448ad52a98ba99fd2eb2f4b4f5eb (diff)
downloadhdf5-f57cc4a702812b1e0a67cbde407894b58bb31181.zip
hdf5-f57cc4a702812b1e0a67cbde407894b58bb31181.tar.gz
hdf5-f57cc4a702812b1e0a67cbde407894b58bb31181.tar.bz2
Fix memory leak in H5PL__find_plugin_in_path
When encountering a directory, the current loop iteration was skipped without freeing the memory allocated for the path.
-rw-r--r--src/H5PLpath.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/H5PLpath.c b/src/H5PLpath.c
index 1858cf8..3879dc6 100644
--- a/src/H5PLpath.c
+++ b/src/H5PLpath.c
@@ -669,8 +669,10 @@ H5PL__find_plugin_in_path(const H5PL_search_params_t *search_params, hbool_t *fo
HDstrerror(errno))
/* If it is a directory, skip it */
- if (S_ISDIR(my_stat.st_mode))
+ if (S_ISDIR(my_stat.st_mode)) {
+ path = (char *)H5MM_xfree(path);
continue;
+ }
/* attempt to open the dynamic library as a filter library */
if (H5PL__open(path, search_params->type, search_params->key, found, plugin_info) < 0)