aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstrongswan/credentials/credential_manager.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstrongswan/credentials/credential_manager.c')
-rw-r--r--src/libstrongswan/credentials/credential_manager.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libstrongswan/credentials/credential_manager.c b/src/libstrongswan/credentials/credential_manager.c
index 27b97eab3..4c310406e 100644
--- a/src/libstrongswan/credentials/credential_manager.c
+++ b/src/libstrongswan/credentials/credential_manager.c
@@ -393,6 +393,11 @@ METHOD(credential_manager_t, remove_local_set, void,
sets = this->local_sets->get(this->local_sets);
sets->remove(sets, set, NULL);
+ if (sets->get_count(sets) == 0)
+ {
+ this->local_sets->set(this->local_sets, NULL);
+ sets->destroy(sets);
+ }
}
METHOD(credential_manager_t, cache_cert, void,