merge of 'c1b5711e3689876bd5d75a30cbb73051569cd381'

Sat, 01 Aug 2009 18:55:27 +0000

author
Paul Aurich <darkrain42@pidgin.im>
date
Sat, 01 Aug 2009 18:55:27 +0000
changeset 28069
5590155a7bf3
parent 28055
c1b5711e3689 (diff)
parent 28068
a47820a26c93 (current diff)
child 28070
df31e9d5ad88

merge of 'c1b5711e3689876bd5d75a30cbb73051569cd381'
and 'a47820a26c93ff0acf6fcd983550f1dd39046108'

--- a/libpurple/protocols/yahoo/libymsg.c	Sat Aug 01 18:51:02 2009 +0000
+++ b/libpurple/protocols/yahoo/libymsg.c	Sat Aug 01 18:55:27 2009 +0000
@@ -2082,6 +2082,12 @@
 		msg = g_strdup(_("Your account is locked, please log in to the Yahoo! website."));
 		reason = PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED;
 		break;
+	case 52:
+		/* See #9660. As much as we know, reconnecting shouldn't hurt */
+		purple_debug_info("yahoo", "Got error 52, Set to autoreconnect\n");
+		msg = g_strdup_printf(_("Unknown error"));
+		reason = PURPLE_CONNECTION_ERROR_NETWORK_ERROR;
+		break;
 	case 1013:
 		msg = g_strdup(_("Invalid username"));
 		reason = PURPLE_CONNECTION_ERROR_INVALID_USERNAME;
--- a/libpurple/protocols/yahoo/util.c	Sat Aug 01 18:51:02 2009 +0000
+++ b/libpurple/protocols/yahoo/util.c	Sat Aug 01 18:55:27 2009 +0000
@@ -757,6 +757,8 @@
 					} else if (!g_ascii_strncasecmp(&src[i+1], "A HREF=\"", j - i - 1)) {
 						j += 7;
 						g_string_append(dest, "\033[lm");
+						if (purple_str_has_prefix(src + j, "mailto:"))
+							j += sizeof("mailto:") - 1;
 						while (1) {
 							g_string_append_c(dest, src[j]);
 							if (++j >= src_len) {

mercurial