libpurple/protocols/jabber/jabber.c

branch
soc.2013.gobjectification.plugins
changeset 36427
c820f900c455
parent 36362
e518ad02107d
parent 34869
7bb3023a9997
child 36444
16698906337b
--- a/libpurple/protocols/jabber/jabber.c	Sat Aug 03 05:09:43 2013 +0530
+++ b/libpurple/protocols/jabber/jabber.c	Sat Aug 03 05:39:04 2013 +0530
@@ -566,7 +566,7 @@
 #endif
 
 	if (js->bosh)
-		jabber_bosh_connection_send_raw(js->bosh, data);
+		jabber_bosh_connection_send(js->bosh, data);
 	else
 		do_jabber_send_raw(js, data, len);
 }
@@ -775,7 +775,7 @@
 		token = g_strsplit(purple_txt_response_get_content(resp), "=", 2);
 		if (!strcmp(token[0], "_xmpp-client-xbosh")) {
 			purple_debug_info("jabber","Found alternative connection method using %s at %s.\n", token[0], token[1]);
-			js->bosh = jabber_bosh_connection_init(js, token[1]);
+			js->bosh = jabber_bosh_connection_new(js, token[1]);
 			g_strfreev(token);
 			break;
 		}
@@ -784,10 +784,8 @@
 		responses = g_list_delete_link(responses, responses);
 	}
 
-	if (js->bosh) {
+	if (js->bosh)
 		found = TRUE;
-		jabber_bosh_connection_connect(js->bosh);
-	}
 
 	if (!found) {
 		purple_debug_warning("jabber", "Unable to find alternative XMPP connection "
@@ -1036,10 +1034,8 @@
 	 * attached to that choice, though.
 	 */
 	if (*bosh_url) {
-		js->bosh = jabber_bosh_connection_init(js, bosh_url);
-		if (js->bosh)
-			jabber_bosh_connection_connect(js->bosh);
-		else {
+		js->bosh = jabber_bosh_connection_new(js, bosh_url);
+		if (!js->bosh) {
 			purple_connection_error(gc,
 				PURPLE_CONNECTION_ERROR_INVALID_SETTINGS,
 				_("Malformed BOSH URL"));
@@ -1591,9 +1587,10 @@
 	/* Close all of the open Jingle sessions on this stream */
 	jingle_terminate_sessions(js);
 
-	if (js->bosh)
-		jabber_bosh_connection_close(js->bosh);
-	else if ((js->gsc && js->gsc->fd > 0) || js->fd > 0)
+	if (js->bosh) {
+		jabber_bosh_connection_destroy(js->bosh);
+		js->bosh = NULL;
+	} else if ((js->gsc && js->gsc->fd > 0) || js->fd > 0)
 		jabber_send_raw(js, "</stream:stream>", -1);
 
 	if (js->srv_query_data)
@@ -1609,9 +1606,6 @@
 		close(js->fd);
 	}
 
-	if (js->bosh)
-		jabber_bosh_connection_destroy(js->bosh);
-
 	jabber_buddy_remove_all_pending_buddy_info_requests(js);
 
 	jabber_parser_free(js);

mercurial