comparison libgaim/protocols/jabber/jabber.c @ 15282:8e39ca9b954a

[gaim-migrate @ 18072] Fixed retrieval of initial presence from jabber contacts for non-Talk accounts: We are notified of presence for contacts one we set our own presence, so wait to do so until after we've requested the roster. committer: Tailor Script <tailor@pidgin.im>
author Evan Schoenberg <evan.s@dreskin.net>
date Thu, 04 Jan 2007 19:21:10 +0000
parents 4bf7801a2539
children b6f192c01225
comparison
equal deleted inserted replaced
15281:5d53e67c2512 15282:8e39ca9b954a
1006 gc->proto_data = NULL; 1006 gc->proto_data = NULL;
1007 } 1007 }
1008 1008
1009 void jabber_stream_set_state(JabberStream *js, JabberStreamState state) 1009 void jabber_stream_set_state(JabberStream *js, JabberStreamState state)
1010 { 1010 {
1011 GaimPresence *gpresence;
1012 GaimStatus *status;
1013
1014 js->state = state; 1011 js->state = state;
1015 switch(state) { 1012 switch(state) {
1016 case JABBER_STREAM_OFFLINE: 1013 case JABBER_STREAM_OFFLINE:
1017 break; 1014 break;
1018 case JABBER_STREAM_CONNECTING: 1015 case JABBER_STREAM_CONNECTING:
1040 /* The stream will be reinitialized later, in jabber_recv_cb_ssl() */ 1037 /* The stream will be reinitialized later, in jabber_recv_cb_ssl() */
1041 js->reinit = TRUE; 1038 js->reinit = TRUE;
1042 1039
1043 break; 1040 break;
1044 case JABBER_STREAM_CONNECTED: 1041 case JABBER_STREAM_CONNECTED:
1045 gpresence = gaim_account_get_presence(js->gc->account);
1046 status = gaim_presence_get_active_status(gpresence);
1047 jabber_presence_send(js->gc->account, status);
1048 gaim_connection_set_state(js->gc, GAIM_CONNECTED); 1042 gaim_connection_set_state(js->gc, GAIM_CONNECTED);
1049 jabber_disco_items_server(js); 1043 jabber_disco_items_server(js);
1050 break; 1044 break;
1051 } 1045 }
1052 } 1046 }