src/utils_rrdcreate.c: Fix memory leak.
[collectd.git] / src / apache.c
index 8458ce1..16f7acd 100644 (file)
@@ -78,6 +78,7 @@ static void apache_free (apache_t *st)
                curl_easy_cleanup(st->curl);
                st->curl = NULL;
        }
+       sfree (st);
 } /* apache_free */
 
 static size_t apache_curl_callback (void *buf, size_t size, size_t nmemb,
@@ -671,9 +672,18 @@ static int apache_read_host (user_data_t *user_data) /* {{{ */
        return (0);
 } /* }}} int apache_read_host */
 
+static int apache_init (void) /* {{{ */
+{
+       /* Call this while collectd is still single-threaded to avoid
+        * initialization issues in libgcrypt. */
+       curl_global_init (CURL_GLOBAL_SSL);
+       return (0);
+} /* }}} int apache_init */
+
 void module_register (void)
 {
        plugin_register_complex_config ("apache", config);
+       plugin_register_init ("apache", apache_init);
 } /* void module_register */
 
 /* vim: set sw=8 noet fdm=marker : */