libpurple/protocols/facebook/mqtt.c

branch
facebook
changeset 37251
8d6136db4399
parent 37250
3f5570a17b15
child 37252
be11d9f148a6
--- a/libpurple/protocols/facebook/mqtt.c	Wed Jun 03 19:15:53 2015 -0400
+++ b/libpurple/protocols/facebook/mqtt.c	Wed Jun 03 20:06:50 2015 -0400
@@ -316,7 +316,9 @@
 		g_byte_array_append(priv->rbuf, &byte, sizeof byte);
 
 		if (res != sizeof byte) {
-			goto error;
+			fb_mqtt_error(mqtt, FB_MQTT_ERROR_GENERAL,
+			              _("Failed to read fixed header"));
+			return;
 		}
 
 		mult = 1;
@@ -326,7 +328,9 @@
 			g_byte_array_append(priv->rbuf, &byte, sizeof byte);
 
 			if (res != sizeof byte) {
-				goto error;
+				fb_mqtt_error(mqtt, FB_MQTT_ERROR_GENERAL,
+				              _("Failed to read packet size"));
+				return;
 			}
 
 			priv->remz += (byte & 127) * mult;
@@ -339,7 +343,9 @@
 		rize = purple_ssl_read(priv->gsc, buf, size);
 
 		if (rize < 1) {
-			goto error;
+			fb_mqtt_error(mqtt, FB_MQTT_ERROR_GENERAL,
+			              _("Failed to read packet data"));
+			return;
 		}
 
 		g_byte_array_append(priv->rbuf, buf, rize);
@@ -351,17 +357,14 @@
 		priv->remz = 0;
 
 		if (G_UNLIKELY(msg == NULL)) {
-			goto error;
+			fb_mqtt_error(mqtt, FB_MQTT_ERROR_GENERAL,
+			              _("Failed to parse message"));
+			return;
 		}
 
 		fb_mqtt_read(mqtt, msg);
 		g_object_unref(msg);
 	}
-
-	return;
-
-error:
-	fb_mqtt_error(mqtt, FB_MQTT_ERROR_GENERAL, _("Short read"));
 }
 
 void
@@ -562,7 +565,6 @@
 	FbMqttMessage *msg;
 	va_list ap;
 
-	g_return_if_fail(FB_IS_MQTT(mqtt));
 	g_return_if_fail(cid != NULL);
 	g_return_if_fail(!fb_mqtt_connected(mqtt, FALSE));
 
@@ -611,8 +613,6 @@
 {
 	FbMqttMessage *msg;
 
-	g_return_if_fail(FB_IS_MQTT(mqtt));
-
 	if (G_UNLIKELY(!fb_mqtt_connected(mqtt, FALSE))) {
 		return;
 	}

mercurial