summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-libs/loudmouth/files/loudmouth-1.4.3-async-fix.patch')
-rw-r--r--net-libs/loudmouth/files/loudmouth-1.4.3-async-fix.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/net-libs/loudmouth/files/loudmouth-1.4.3-async-fix.patch b/net-libs/loudmouth/files/loudmouth-1.4.3-async-fix.patch
new file mode 100644
index 000000000000..3213d72865aa
--- /dev/null
+++ b/net-libs/loudmouth/files/loudmouth-1.4.3-async-fix.patch
@@ -0,0 +1,30 @@
+--- a/loudmouth/lm-socket.c
++++ b/loudmouth/lm-socket.c
+@@ -1022,7 +1022,7 @@ _lm_socket_create_phase2 (LmSocket *socket, struct addrinfo *ans)
+ if (socket->connect_func) {
+ (socket->connect_func) (socket, FALSE, socket->user_data;
+ }
+- g_free (socket->connect_data);
++ g_free (socket->connect_data);
+ socket->connect_data = NULL;
+ return;
+ }
+@@ -1107,6 +1107,10 @@ lm_socket_create (GMainContext *context,
+ _lm_socket_create_phase1 (socket, NULL, 0);
+ }
+
++#ifndef HAVE_ASYNCNS
++ /* Only do this check if we are not using asyncns or it will crash.
++ * Report and patch by Senko.
++ */
+ if (socket->connect_data == NULL) {
+ /* Open failed synchronously, probably a DNS lookup problem */
+ lm_socket_unref(socket);
+@@ -1118,6 +1122,7 @@ lm_socket_create (GMainContext *context,
+
+ return NULL;
+ }
++#endif /* HAVE_ASYNCNS */
+
+
+ /* If the connection fails synchronously, we don't want to call the