diff options
author | Kamil Dudka <kdudka@redhat.com> | 2014-07-02 16:34:48 +0200 |
---|---|---|
committer | Kamil Dudka <kdudka@redhat.com> | 2014-07-02 18:11:05 +0200 |
commit | 24c3cdce88f39731506c287cb276e8bf4a1ce393 (patch) | |
tree | af9e9b74e8ea4040944b6e2312ad661a8ae2eb12 /src | |
parent | 7581dee10aedeb96231dd24e187ff5426fc72469 (diff) |
tool: call PR_Cleanup() on exit if NSPR is used
This prevents valgrind from reporting possibly lost memory that NSPR
uses for file descriptor cache and other globally allocated internal
data structures.
Diffstat (limited to 'src')
-rw-r--r-- | src/tool_main.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/tool_main.c b/src/tool_main.c index ef96dc3a4..dc980e00c 100644 --- a/src/tool_main.c +++ b/src/tool_main.c @@ -27,6 +27,10 @@ #include <signal.h> #endif +#ifdef USE_NSS +#include <nspr.h> +#endif + #define ENABLE_CURLX_PRINTF /* use our own printf() functions */ #include "curlx.h" @@ -205,6 +209,11 @@ static void main_free(struct GlobalConfig *config) curl_global_cleanup(); convert_cleanup(); metalink_cleanup(); +#ifdef USE_NSS + if(PR_Initialized()) + /* prevent valgrind from reporting possibly lost memory (fd cache, ...) */ + PR_Cleanup(); +#endif free_config_fields(config); /* Free the config structures */ |