/pidgin/main: 20185d4dacbb: Merge with release-2.x.y

Elliott Sales de Andrade <[email protected]>
Newsgroups gmane.comp.gnome.gaim.cvs
Message-ID <[email protected]>
Changeset: 20185d4dacbbe7c97a61b594309a521a68e3f1db
Author:	 Elliott Sales de Andrade <[email protected]>
Date:	 2014-11-12 02:37 -0500
Branch:	 default
URL: https://hg.pidgin.im/pidgin/main/rev/20185d4dacbb

Description:

Merge with release-2.x.y

diffstat:

 libpurple/protocols/msn/contact.c |  16 +++++++++-------
 libpurple/protocols/msn/contact.h |   3 ++-
 libpurple/protocols/msn/session.c |   6 +++---
 3 files changed, 14 insertions(+), 11 deletions(-)

diffs (62 lines):

diff --git a/libpurple/protocols/msn/contact.c b/libpurple/protocols/msn/contact.c
--- a/libpurple/protocols/msn/contact.c
+++ b/libpurple/protocols/msn/contact.c
@@ -487,12 +487,6 @@ msn_parse_contact_list(MsnSession *sessi
 	 * this is not handled yet
 	 */
 	if ((fault = purple_xmlnode_get_child(node, "Body/Fault"))) {
-		if ((faultnode = purple_xmlnode_get_child(fault, "faultstring"))) {
-			char *faultstring = purple_xmlnode_get_data(faultnode);
-			purple_debug_info("msn", "Retrieving contact list failed: %s\n",
-				faultstring);
-			g_free(faultstring);
-		}
 		if ((faultnode = purple_xmlnode_get_child(fault, "detail/errorcode"))) {
 			char *errorcode = purple_xmlnode_get_data(faultnode);
 
@@ -505,7 +499,15 @@ msn_parse_contact_list(MsnSession *sessi
 			g_free(errorcode);
 		}
 
-		msn_get_contact_list(session, MSN_PS_INITIAL, NULL);
+		if ((faultnode = purple_xmlnode_get_child(fault, "faultstring"))) {
+			char *faultstring = purple_xmlnode_get_data(faultnode);
+			purple_debug_info("msn", "Retrieving contact list failed: %s\n",
+				faultstring);
+			msn_session_set_error(session, MSN_ERROR_BAD_BLIST, faultstring);
+			g_free(faultstring);
+		} else {
+			msn_session_set_error(session, MSN_ERROR_BAD_BLIST, NULL);
+		}
 		return FALSE;
 	} else {
 		PurpleXmlNode *service;
diff --git a/libpurple/protocols/msn/contact.h b/libpurple/protocols/msn/contact.h
--- a/libpurple/protocols/msn/contact.h
+++ b/libpurple/protocols/msn/contact.h
@@ -60,7 +60,8 @@ typedef enum
 #include "session.h"
 #include "soap.h"
 
-#define MSN_APPLICATION_ID "CFE80F9D-180F-4399-82AB-413F33A1FA11"
+/* Thanks to TReKiE on the #pidgin channel for this new ID. */
+#define MSN_APPLICATION_ID "484AAC02-7F59-41B7-9601-772045DCC569"
 
 #define MSN_CONTACT_SERVER	"local-bay.contacts.msn.com"
 
diff --git a/libpurple/protocols/msn/session.c b/libpurple/protocols/msn/session.c
--- a/libpurple/protocols/msn/session.c
+++ b/libpurple/protocols/msn/session.c
@@ -406,9 +406,9 @@ msn_session_set_error(MsnSession *sessio
 			break;
 		case MSN_ERROR_BAD_BLIST:
 			reason = PURPLE_CONNECTION_ERROR_NETWORK_ERROR;
-			msg = g_strdup(_("Your MSN buddy list is temporarily "
-							 "unavailable. Please wait and try "
-							 "again."));
+			msg = g_strdup_printf(_("Your MSN buddy list is temporarily "
+			                        "unavailable: %s"),
+			                      (info == NULL) ? _("Unknorn error") : info);
 			break;
 		default:
 			reason = PURPLE_CONNECTION_ERROR_NETWORK_ERROR;
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.