Mercurial > pidgin
comparison libpurple/protocols/bonjour/bonjour.c @ 25788:ac967ea95b05
Use purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
in the Bonjour prpl. It's still not fully updated to compile.
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Thu, 30 Oct 2008 20:08:29 +0000 |
parents | c06b85e1d020 |
children | da46097b4722 |
comparison
equal
deleted
inserted
replaced
25787:12b8ccc3e9ec | 25788:ac967ea95b05 |
---|---|
259 purple_blist_remove_buddy(buddy); | 259 purple_blist_remove_buddy(buddy); |
260 } | 260 } |
261 | 261 |
262 | 262 |
263 static void bonjour_remove_buddy(PurpleConnection *pc, PurpleBuddy *buddy, PurpleGroup *group) { | 263 static void bonjour_remove_buddy(PurpleConnection *pc, PurpleBuddy *buddy, PurpleGroup *group) { |
264 if (buddy->proto_data) { | 264 BonjourBuddy *bb = purple_buddy_get_protocol_data(buddy); |
265 bonjour_buddy_delete(buddy->proto_data); | 265 if (bb) { |
266 buddy->proto_data = NULL; | 266 bonjour_buddy_delete(bb); |
267 purple_buddy_set_protocol_data(buddy, NULL); | |
267 } | 268 } |
268 } | 269 } |
269 | 270 |
270 static GList * | 271 static GList * |
271 bonjour_status_types(PurpleAccount *account) | 272 bonjour_status_types(PurpleAccount *account) |
301 bonjour_convo_closed(PurpleConnection *connection, const char *who) | 302 bonjour_convo_closed(PurpleConnection *connection, const char *who) |
302 { | 303 { |
303 PurpleBuddy *buddy = purple_find_buddy(connection->account, who); | 304 PurpleBuddy *buddy = purple_find_buddy(connection->account, who); |
304 BonjourBuddy *bb; | 305 BonjourBuddy *bb; |
305 | 306 |
306 if (buddy == NULL || buddy->proto_data == NULL) | 307 if (buddy == NULL || (bb = purple_buddy_get_protocol_data(buddy)) == NULL) |
307 { | 308 { |
308 /* | 309 /* |
309 * This buddy is not in our buddy list, and therefore does not really | 310 * This buddy is not in our buddy list, and therefore does not really |
310 * exist, so we won't have any data about them. | 311 * exist, so we won't have any data about them. |
311 */ | 312 */ |
312 return; | 313 return; |
313 } | 314 } |
314 | 315 |
315 bb = buddy->proto_data; | |
316 bonjour_jabber_close_conversation(bb->conversation); | 316 bonjour_jabber_close_conversation(bb->conversation); |
317 bb->conversation = NULL; | 317 bb->conversation = NULL; |
318 } | 318 } |
319 | 319 |
320 static | 320 static |
349 static void | 349 static void |
350 bonjour_tooltip_text(PurpleBuddy *buddy, PurpleNotifyUserInfo *user_info, gboolean full) | 350 bonjour_tooltip_text(PurpleBuddy *buddy, PurpleNotifyUserInfo *user_info, gboolean full) |
351 { | 351 { |
352 PurplePresence *presence; | 352 PurplePresence *presence; |
353 PurpleStatus *status; | 353 PurpleStatus *status; |
354 BonjourBuddy *bb = buddy->proto_data; | 354 BonjourBuddy *bb = purple_buddy_get_protocol_data(buddy); |
355 const char *status_description; | 355 const char *status_description; |
356 const char *message; | 356 const char *message; |
357 | 357 |
358 presence = purple_buddy_get_presence(buddy); | 358 presence = purple_buddy_get_presence(buddy); |
359 status = purple_presence_get_active_status(presence); | 359 status = purple_presence_get_active_status(presence); |
415 static gboolean | 415 static gboolean |
416 bonjour_can_receive_file(PurpleConnection *connection, const char *who) | 416 bonjour_can_receive_file(PurpleConnection *connection, const char *who) |
417 { | 417 { |
418 PurpleBuddy *buddy = purple_find_buddy(connection->account, who); | 418 PurpleBuddy *buddy = purple_find_buddy(connection->account, who); |
419 | 419 |
420 return (buddy != NULL && buddy->proto_data != NULL); | 420 return (buddy != NULL && purple_buddy_get_protocol_data(buddy) != NULL); |
421 | |
422 } | 421 } |
423 | 422 |
424 static gboolean | 423 static gboolean |
425 plugin_unload(PurplePlugin *plugin) | 424 plugin_unload(PurplePlugin *plugin) |
426 { | 425 { |