dovecot-2.2: fts-solr: Fixed memory leak at user deinit.
dovecot at dovecot.org
dovecot at dovecot.org
Wed May 13 14:18:20 UTC 2015
details: http://hg.dovecot.org/dovecot-2.2/rev/8973648dd361
changeset: 18678:8973648dd361
user: Timo Sirainen <tss at iki.fi>
date: Wed May 13 17:16:21 2015 +0300
description:
fts-solr: Fixed memory leak at user deinit.
diffstat:
src/plugins/fts-solr/fts-backend-solr-old.c | 1 +
src/plugins/fts-solr/fts-backend-solr.c | 1 +
src/plugins/fts-solr/solr-connection.c | 5 ++++-
src/plugins/fts-solr/solr-connection.h | 2 +-
4 files changed, 7 insertions(+), 2 deletions(-)
diffs (50 lines):
diff -r e6e04177374d -r 8973648dd361 src/plugins/fts-solr/fts-backend-solr-old.c
--- a/src/plugins/fts-solr/fts-backend-solr-old.c Wed May 13 16:54:27 2015 +0300
+++ b/src/plugins/fts-solr/fts-backend-solr-old.c Wed May 13 17:16:21 2015 +0300
@@ -249,6 +249,7 @@
{
struct solr_fts_backend *backend = (struct solr_fts_backend *)_backend;
+ solr_connection_deinit(&backend->solr_conn);
i_free(backend->id_namespace);
i_free(backend->id_username);
i_free(backend);
diff -r e6e04177374d -r 8973648dd361 src/plugins/fts-solr/fts-backend-solr.c
--- a/src/plugins/fts-solr/fts-backend-solr.c Wed May 13 16:54:27 2015 +0300
+++ b/src/plugins/fts-solr/fts-backend-solr.c Wed May 13 17:16:21 2015 +0300
@@ -179,6 +179,7 @@
{
struct solr_fts_backend *backend = (struct solr_fts_backend *)_backend;
+ solr_connection_deinit(&backend->solr_conn);
i_free(backend);
}
diff -r e6e04177374d -r 8973648dd361 src/plugins/fts-solr/solr-connection.c
--- a/src/plugins/fts-solr/solr-connection.c Wed May 13 16:54:27 2015 +0300
+++ b/src/plugins/fts-solr/solr-connection.c Wed May 13 17:16:21 2015 +0300
@@ -142,8 +142,11 @@
return 0;
}
-void solr_connection_deinit(struct solr_connection *conn)
+void solr_connection_deinit(struct solr_connection **_conn)
{
+ struct solr_connection *conn = *_conn;
+
+ *_conn = NULL;
XML_ParserFree(conn->xml_parser);
i_free(conn->http_host);
i_free(conn->http_base_url);
diff -r e6e04177374d -r 8973648dd361 src/plugins/fts-solr/solr-connection.h
--- a/src/plugins/fts-solr/solr-connection.h Wed May 13 16:54:27 2015 +0300
+++ b/src/plugins/fts-solr/solr-connection.h Wed May 13 17:16:21 2015 +0300
@@ -15,7 +15,7 @@
int solr_connection_init(const char *url, bool debug,
struct solr_connection **conn_r, const char **error_r);
-void solr_connection_deinit(struct solr_connection *conn);
+void solr_connection_deinit(struct solr_connection **conn);
int solr_connection_select(struct solr_connection *conn, const char *query,
pool_t pool, struct solr_result ***box_results_r);
More information about the dovecot-cvs
mailing list