diff libpurple/protocols/jabber/auth_cyrus.c @ 31596:84e9eb0ae4d5

jabber: Un-assert-ify one failure case in the Cyrus code. Seen in a user's debug log, where the server sent back (slightly redacted): <success xmlns="urn:ietf:params:xml:ns:xmpp-sasl">[B@10stuff</success>
author Paul Aurich <paul@darkrain42.org>
date Mon, 17 Jan 2011 22:37:03 +0000
parents 3f5ff1ea4802
children b1a6535f99d9
line wrap: on
line diff
--- a/libpurple/protocols/jabber/auth_cyrus.c	Thu Jan 13 08:24:28 2011 +0000
+++ b/libpurple/protocols/jabber/auth_cyrus.c	Mon Jan 17 22:37:03 2011 +0000
@@ -520,9 +520,12 @@
 		g_free(dec_in);
 
 		if (js->sasl_state != SASL_OK) {
-			/* This should never happen! */
+			/* This happens when the server sends back jibberish
+			 * in the "additional data with success" case.
+			 * Seen with Wildfire 3.0.1.
+			 */
 			*error = g_strdup(_("Invalid response from server"));
-			g_return_val_if_reached(JABBER_SASL_STATE_FAIL);
+			return JABBER_SASL_STATE_FAIL;
 		}
 	}