aboutsummaryrefslogtreecommitdiff
path: root/dev-libs/libstrophe/files/libstrophe-fix-memory-leaks.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libstrophe/files/libstrophe-fix-memory-leaks.patch')
-rw-r--r--dev-libs/libstrophe/files/libstrophe-fix-memory-leaks.patch56
1 files changed, 0 insertions, 56 deletions
diff --git a/dev-libs/libstrophe/files/libstrophe-fix-memory-leaks.patch b/dev-libs/libstrophe/files/libstrophe-fix-memory-leaks.patch
deleted file mode 100644
index 60bb02c..0000000
--- a/dev-libs/libstrophe/files/libstrophe-fix-memory-leaks.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-diff --git a/src/auth.c b/src/auth.c
-index 2371925..30d0832 100644
---- a/src/auth.c
-+++ b/src/auth.c
-@@ -554,6 +554,7 @@ static void _auth(xmpp_conn_t * const conn)
- disconnect_mem_error(conn);
- return;
- }
-+ xmpp_free(conn->ctx, authid);
- xmpp_stanza_set_text(authdata, str);
- xmpp_free(conn->ctx, str);
-
-diff --git a/src/conn.c b/src/conn.c
-index 26df418..cf29744 100644
---- a/src/conn.c
-+++ b/src/conn.c
-@@ -190,6 +190,8 @@ int xmpp_conn_release(xmpp_conn_t * const conn)
- xmpp_connlist_t *item, *prev;
- xmpp_handlist_t *hlitem, *thli;
- hash_iterator_t *iter;
-+ xmpp_send_queue_t *sq;
-+ xmpp_send_queue_t *tsq;
- const char *key;
- int released = 0;
-
-@@ -267,13 +269,28 @@ int xmpp_conn_release(xmpp_conn_t * const conn)
- }
-
- parser_free(conn->parser);
--
-+
- if (conn->domain) xmpp_free(ctx, conn->domain);
- if (conn->jid) xmpp_free(ctx, conn->jid);
-- if (conn->bound_jid) xmpp_free(ctx, conn->bound_jid);
-+ if (conn->bound_jid) xmpp_free(ctx, conn->bound_jid);
- if (conn->pass) xmpp_free(ctx, conn->pass);
- if (conn->stream_id) xmpp_free(ctx, conn->stream_id);
- if (conn->lang) xmpp_free(ctx, conn->lang);
-+
-+ sq = conn->send_queue_head;
-+ while (sq != NULL) {
-+ if (sq->data) {
-+ xmpp_free(ctx, sq->data);
-+ }
-+ tsq = sq->next;
-+ xmpp_free(ctx, sq);
-+ sq = tsq;
-+ }
-+
-+ if (conn->tls) {
-+ tls_free(conn->tls);
-+ }
-+
- xmpp_free(ctx, conn);
- released = 1;
- }