comparison libpurple/protocols/jabber/jabber.c @ 17593:759cd72bd2ff

Replaced a clean and simple API with a very weird hack due to vivid request on #pidgin by multiple devs. This avoids the change in PurplePluginProtocolInfo, but requires complicated change tracking in every prpl. The others prpl should add this change tracking, too (since otherwise the status gets changed even though nothing they care about changed), but that's not up to me.
author Andreas Monitzer <pidgin@monitzer.com>
date Mon, 18 Jun 2007 12:37:29 +0000
parents 3e437e86bd6e
children 6842cc73b1b7
comparison
equal deleted inserted replaced
17592:f2686bec13c0 17593:759cd72bd2ff
560 js->chats = g_hash_table_new_full(g_str_hash, g_str_equal, 560 js->chats = g_hash_table_new_full(g_str_hash, g_str_equal,
561 g_free, (GDestroyNotify)jabber_chat_free); 561 g_free, (GDestroyNotify)jabber_chat_free);
562 js->user = jabber_id_new(purple_account_get_username(account)); 562 js->user = jabber_id_new(purple_account_get_username(account));
563 js->next_id = g_random_int(); 563 js->next_id = g_random_int();
564 js->write_buffer = purple_circ_buffer_new(512); 564 js->write_buffer = purple_circ_buffer_new(512);
565 js->old_length = -1;
565 566
566 if(!js->user) { 567 if(!js->user) {
567 purple_connection_error(gc, _("Invalid XMPP ID")); 568 purple_connection_error(gc, _("Invalid XMPP ID"));
568 return; 569 return;
569 } 570 }
910 g_free, g_free); 911 g_free, g_free);
911 js->disco_callbacks = g_hash_table_new_full(g_str_hash, g_str_equal, 912 js->disco_callbacks = g_hash_table_new_full(g_str_hash, g_str_equal,
912 g_free, g_free); 913 g_free, g_free);
913 js->user = jabber_id_new(purple_account_get_username(account)); 914 js->user = jabber_id_new(purple_account_get_username(account));
914 js->next_id = g_random_int(); 915 js->next_id = g_random_int();
916 js->old_length = -1;
915 917
916 if(!js->user) { 918 if(!js->user) {
917 purple_connection_error(gc, _("Invalid XMPP ID")); 919 purple_connection_error(gc, _("Invalid XMPP ID"));
918 return; 920 return;
919 } 921 }
1028 if(js->serverFQDN) 1030 if(js->serverFQDN)
1029 g_free(js->serverFQDN); 1031 g_free(js->serverFQDN);
1030 g_free(js->server_name); 1032 g_free(js->server_name);
1031 g_free(js->gmail_last_time); 1033 g_free(js->gmail_last_time);
1032 g_free(js->gmail_last_tid); 1034 g_free(js->gmail_last_tid);
1035 if(js->old_msg)
1036 g_free(js->old_msg);
1037 if(js->old_avatarhash)
1038 g_free(js->old_avatarhash);
1039 if(js->old_artist)
1040 g_free(js->old_artist);
1041 if(js->old_title)
1042 g_free(js->old_title);
1043 if(js->old_source)
1044 g_free(js->old_source);
1045 if(js->old_uri)
1046 g_free(js->old_uri);
1047 if(js->old_track)
1048 g_free(js->old_track);
1049
1033 g_free(js); 1050 g_free(js);
1034 1051
1035 gc->proto_data = NULL; 1052 gc->proto_data = NULL;
1036 } 1053 }
1037 1054