pidgin/gtkconv.c

changeset 33671
441740e869b2
parent 33670
59583b8ffa59
child 33683
bf243e3394a7
child 33698
e730d1a5f058
equal deleted inserted replaced
33670:59583b8ffa59 33671:441740e869b2
3313 } else { 3313 } else {
3314 if (!purple_account_is_connected(account)) 3314 if (!purple_account_is_connected(account))
3315 return FALSE; 3315 return FALSE;
3316 3316
3317 buddy = purple_find_buddy(account, purple_conversation_get_name(conv)); 3317 buddy = purple_find_buddy(account, purple_conversation_get_name(conv));
3318 3318 if (!buddy && gtkconv->webview) {
3319 if ((buddy == NULL) && (gtkconv->webview != NULL)) {
3320 buddy = g_object_get_data(G_OBJECT(gtkconv->webview), "transient_buddy"); 3319 buddy = g_object_get_data(G_OBJECT(gtkconv->webview), "transient_buddy");
3321 } 3320
3322 3321 if (!buddy) {
3323 if ((buddy == NULL) && (gtkconv->webview != NULL)) { 3322 buddy = purple_buddy_new(account, purple_conversation_get_name(conv), NULL);
3324 buddy = purple_buddy_new(account, purple_conversation_get_name(conv), NULL); 3323 purple_blist_node_set_flags((PurpleBlistNode *)buddy,
3325 purple_blist_node_set_flags((PurpleBlistNode *)buddy, 3324 PURPLE_BLIST_NODE_FLAG_NO_SAVE);
3326 PURPLE_BLIST_NODE_FLAG_NO_SAVE); 3325 g_object_set_data_full(G_OBJECT(gtkconv->webview), "transient_buddy",
3327 g_object_set_data_full(G_OBJECT(gtkconv->webview), "transient_buddy", 3326 buddy, (GDestroyNotify)purple_buddy_destroy);
3328 buddy, (GDestroyNotify)purple_buddy_destroy); 3327 }
3329 } 3328 }
3330 } 3329 }
3331 3330
3332 if (chat) 3331 if (chat)
3333 node = (PurpleBlistNode *)chat; 3332 node = (PurpleBlistNode *)chat;

mercurial