besser82 / rpms / pidgin

Forked from rpms/pidgin 6 years ago
Clone
Blob Blame History Raw
diff -up pidgin-2.4.2/libpurple/connection.c.resolv pidgin-2.4.2/libpurple/connection.c
--- pidgin-2.4.2/libpurple/connection.c.resolv	2008-02-02 10:09:14.000000000 -0500
+++ pidgin-2.4.2/libpurple/connection.c	2008-05-17 10:42:56.000000000 -0400
@@ -40,6 +40,10 @@
 
 #define KEEPALIVE_INTERVAL 30
 
+#include <netinet/in.h>
+#include <arpa/nameser.h>
+#include <resolv.h>
+
 static GList *connections = NULL;
 static GList *connections_connecting = NULL;
 static PurpleConnectionUiOps *connection_ui_ops = NULL;
@@ -153,6 +157,9 @@ purple_connection_new(PurpleAccount *acc
 
 	purple_signal_emit(purple_connections_get_handle(), "signing-on", gc);
 
+	/* Re-read resolv.conf and friends in case DNS servers have changed */
+	res_init();
+
 	if (regist)
 	{
 		purple_debug_info("connection", "Registering.  gc = %p\n", gc);
diff -up pidgin-2.4.2/libpurple/network.c.resolv pidgin-2.4.2/libpurple/network.c
--- pidgin-2.4.2/libpurple/network.c.resolv	2008-05-16 11:36:56.000000000 -0400
+++ pidgin-2.4.2/libpurple/network.c	2008-05-17 10:46:47.000000000 -0400
@@ -624,8 +624,6 @@ nm_update_state(NMState state)
 	switch(state)
 	{
 		case NM_STATE_CONNECTED:
-			/* Call res_init in case DNS servers have changed */
-			res_init();
 			if (ui_ops != NULL && ui_ops->network_connected != NULL)
 				ui_ops->network_connected();
 			prev = state;