/pidgin/main: a67be31f9c7e: Use the GResolver which was passed t...

Mike Ruprecht <[email protected]>
Newsgroups gmane.comp.gnome.gaim.cvs
Message-ID <[email protected]>
Changeset: a67be31f9c7eeb7dd84b8d6406035ac183d7d9bb
Author:	 Mike Ruprecht <[email protected]>
Date:	 2016-01-07 20:12 -0600
Branch:	 default
URL: https://hg.pidgin.im/pidgin/main/rev/a67be31f9c7e

Description:

Use the GResolver which was passed to g_resolver_lookup_*_async()

Using the GResolver passed to the g_resolver_lookup_*_async() function
avoids the potential problem of the default resolver changing between
the *_async() and *_finish() functions.

diffstat:

 libpurple/network.c                            |   3 ++-
 libpurple/protocols/gg/resolver-purple.c       |   3 ++-
 libpurple/protocols/jabber/disco.c             |   3 ++-
 libpurple/protocols/jabber/google/jingleinfo.c |   3 ++-
 libpurple/protocols/jabber/jabber.c            |   6 ++++--
 libpurple/protocols/simple/simple.c            |   6 ++++--
 libpurple/protocols/yahoo/yahoo_filexfer.c     |   3 ++-
 libpurple/proxy.c                              |  10 ++++------
 libpurple/stun.c                               |   6 ++++--
 9 files changed, 26 insertions(+), 17 deletions(-)

diffs (168 lines):

diff --git a/libpurple/network.c b/libpurple/network.c
--- a/libpurple/network.c
+++ b/libpurple/network.c
@@ -577,7 +577,8 @@ purple_network_ip_lookup_cb(GObject *sen
 	GInetAddress *address = NULL;
 	const gchar **ip_address = (const gchar **)data;
 
-	addresses = g_resolver_lookup_by_name_finish(g_resolver_get_default(), result, &error);
+	addresses = g_resolver_lookup_by_name_finish(G_RESOLVER(sender),
+			result, &error);
 	if(error) {
 		purple_debug_info("network", "lookup of IP address failed: %s\n", error->message);
 
diff --git a/libpurple/protocols/gg/resolver-purple.c b/libpurple/protocols/gg/resolver-purple.c
--- a/libpurple/protocols/gg/resolver-purple.c
+++ b/libpurple/protocols/gg/resolver-purple.c
@@ -72,7 +72,8 @@ void ggp_resolver_purple_cb(GObject *sen
 	ggp_resolver_purple_data *data = (ggp_resolver_purple_data*)cbdata;
 	const int fd = data->pipes[1];
 
-	addresses = g_resolver_lookup_by_name_finish(g_resolver_get_default(), res, &error);
+	addresses = g_resolver_lookup_by_name_finish(G_RESOLVER(sender),
+			res, &error);
 	if(addresses == NULL) {
 		purple_debug_error("gg", "ggp_resolver_purple_cb failed: %s\n",
 			error->message);
diff --git a/libpurple/protocols/jabber/disco.c b/libpurple/protocols/jabber/disco.c
--- a/libpurple/protocols/jabber/disco.c
+++ b/libpurple/protocols/jabber/disco.c
@@ -426,7 +426,8 @@ jabber_disco_stun_srv_resolve_cb(GObject
 	JabberStream *js = (JabberStream *) data;
 	gint results = 0;
 
-	services = g_resolver_lookup_service_finish(g_resolver_get_default(), result, &error);
+	services = g_resolver_lookup_service_finish(G_RESOLVER(sender),
+			result, &error);
 
 	if(error != NULL) {
 		purple_debug_info("jabber", "Failed to look up a STUN record : %s\n", error->message);
diff --git a/libpurple/protocols/jabber/google/jingleinfo.c b/libpurple/protocols/jabber/google/jingleinfo.c
--- a/libpurple/protocols/jabber/google/jingleinfo.c
+++ b/libpurple/protocols/jabber/google/jingleinfo.c
@@ -30,7 +30,8 @@ jabber_google_stun_lookup_cb(GObject *se
 	GList *addresses = NULL;
 	JabberStream *js = (JabberStream *) data;
 
-	addresses = g_resolver_lookup_by_name_finish(g_resolver_get_default(), result, &error);
+	addresses = g_resolver_lookup_by_name_finish(G_RESOLVER(sender),
+			result, &error);
 
 	if(error) {
 		purple_debug_error("jabber", "Google STUN lookup failed: %s\n",
diff --git a/libpurple/protocols/jabber/jabber.c b/libpurple/protocols/jabber/jabber.c
--- a/libpurple/protocols/jabber/jabber.c
+++ b/libpurple/protocols/jabber/jabber.c
@@ -763,7 +763,8 @@ txt_resolved_cb(GObject *sender, GAsyncR
 	JabberStream *js = data;
 	gboolean found = FALSE;
 
-	records = g_resolver_lookup_records_finish(g_resolver_get_default(), result, &error);
+	records = g_resolver_lookup_records_finish(G_RESOLVER(sender),
+			result, &error);
 	if(error) {
 		purple_debug_warning("jabber", "Unable to find alternative XMPP connection "
 				  "methods after failing to connect directly. : %s\n",
@@ -907,7 +908,8 @@ srv_resolved_cb(GObject *sender, GAsyncR
 	GList *targets = NULL, *l = NULL;
 	JabberStream *js = data;
 
-	targets = g_resolver_lookup_service_finish(g_resolver_get_default(), result, &error);
+	targets = g_resolver_lookup_service_finish(G_RESOLVER(sender),
+			result, &error);
 	if(error) {
 		purple_debug_warning("jabber",
 		                     "SRV lookup failed, proceeding with normal connection : %s",
diff --git a/libpurple/protocols/simple/simple.c b/libpurple/protocols/simple/simple.c
--- a/libpurple/protocols/simple/simple.c
+++ b/libpurple/protocols/simple/simple.c
@@ -1807,7 +1807,8 @@ simple_udp_host_resolved(GObject *sender
 	GSocketAddress *socket_address = NULL;
 	struct simple_account_data *sip = (struct simple_account_data*) data;
 
-	addresses = g_resolver_lookup_by_name_finish(g_resolver_get_default(), result, &error);
+	addresses = g_resolver_lookup_by_name_finish(G_RESOLVER(sender),
+			result, &error);
 	if(error) {
 		gchar *msg = g_strdup_printf(_("Unable to resolve hostname : %s"),
 			error->message);
@@ -1885,7 +1886,8 @@ srvresolved(GObject *sender, GAsyncResul
 
 	sip = data;
 
-	targets = g_resolver_lookup_service_finish(g_resolver_get_default(), result, &error);
+	targets = g_resolver_lookup_service_finish(G_RESOLVER(sender),
+			result, &error);
 	if(error) {
 		purple_debug_info("simple",
 		                  "srv lookup failed, continuing with configured settings : %s",
diff --git a/libpurple/protocols/yahoo/yahoo_filexfer.c b/libpurple/protocols/yahoo/yahoo_filexfer.c
--- a/libpurple/protocols/yahoo/yahoo_filexfer.c
+++ b/libpurple/protocols/yahoo/yahoo_filexfer.c
@@ -521,7 +521,8 @@ yahoo_xfer_dns_connected_15(GObject *sen
 	account = purple_connection_get_account(gc);
 	yd = purple_connection_get_protocol_data(gc);
 
-	addresses = g_resolver_lookup_by_name_finish(g_resolver_get_default(), result, &error);
+	addresses = g_resolver_lookup_by_name_finish(G_RESOLVER(sender),
+			result, &error);
 	if(error) {
 		purple_debug_error("yahoo",
 		                   "Unable to find an IP address for relay.msg.yahoo.com : %s\n",
diff --git a/libpurple/proxy.c b/libpurple/proxy.c
--- a/libpurple/proxy.c
+++ b/libpurple/proxy.c
@@ -1309,7 +1309,6 @@ s4_canread(gpointer data, gint source, P
 static void
 s4_host_resolved(GObject *source_object, GAsyncResult *res, gpointer data)
 {
-	GResolver *resolver = NULL;
 	GInetAddress *address = NULL;
 	GError *error = NULL;
 	GList *hosts = NULL, *l = NULL;
@@ -1322,10 +1321,8 @@ s4_host_resolved(GObject *source_object,
 		connect_data->cancellable = NULL;
 	}
 
-	resolver = g_resolver_get_default();
-
-	hosts = g_resolver_lookup_by_name_finish(resolver, res, &error);
-	g_object_unref(G_OBJECT(resolver));
+	hosts = g_resolver_lookup_by_name_finish(G_RESOLVER(source_object),
+			res, &error);
 
 	if (error->message != NULL) {
 		purple_proxy_connect_data_disconnect(connect_data, error->message);
@@ -2226,7 +2223,8 @@ connection_host_resolved(GObject *source
 	GError *error = NULL;
 	GList *addresses = NULL;
 
-	addresses = g_resolver_lookup_by_name_finish(g_resolver_get_default(), res, &error);
+	addresses = g_resolver_lookup_by_name_finish(G_RESOLVER(source),
+			res, &error);
 
 	if(G_IS_CANCELLABLE(connect_data->cancellable)) {
 		g_object_unref(G_OBJECT(connect_data->cancellable));
diff --git a/libpurple/stun.c b/libpurple/stun.c
--- a/libpurple/stun.c
+++ b/libpurple/stun.c
@@ -351,7 +351,8 @@ hbn_cb(GObject *sender, GAsyncResult *re
 
 	ld = g_new0(StunHBNListenData, 1);
 
-	ld->addresses = g_resolver_lookup_by_name_finish(g_resolver_get_default(), res, &error);
+	ld->addresses = g_resolver_lookup_by_name_finish(G_RESOLVER(sender),
+			res, &error);
 	if(error != NULL) {
 		nattype.status = PURPLE_STUN_STATUS_UNDISCOVERED;
 		nattype.lookup_time = time(NULL);
@@ -379,7 +380,8 @@ do_test1(GObject *sender, GAsyncResult *
 	const char *servername = data;
 	int port = 3478;
 
-	services = g_resolver_lookup_service_finish(g_resolver_get_default(), res, &error);
+	services = g_resolver_lookup_service_finish(G_RESOLVER(sender),
+			res, &error);
 	if(error != NULL) {
 		purple_debug_info("stun", "Failed to look up srv record : %s\n", error->message);
 

_______________________________________________
Commits mailing list
[email protected]
https://pidgin.im/cgi-bin/mailman/listinfo/commits
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.