src/protocols/irc/msgs.c

changeset 9951
19b949eca7f8
parent 9927
7ae7d2accb3e
child 10242
3d70dbd01f4c
equal deleted inserted replaced
9950:ac8bc7606554 9951:19b949eca7f8
548 548
549 static void irc_buddy_status(char *name, struct irc_buddy *ib, struct irc_conn *irc) 549 static void irc_buddy_status(char *name, struct irc_buddy *ib, struct irc_conn *irc)
550 { 550 {
551 GaimConnection *gc = gaim_account_get_connection(irc->account); 551 GaimConnection *gc = gaim_account_get_connection(irc->account);
552 GaimBuddy *buddy = gaim_find_buddy(irc->account, name); 552 GaimBuddy *buddy = gaim_find_buddy(irc->account, name);
553 GaimPresence *presence;
553 554
554 if (!gc || !buddy) 555 if (!gc || !buddy)
555 return; 556 return;
556 557
558 presence = gaim_buddy_get_presence(buddy);
559
557 if (ib->online && !ib->flag) { 560 if (ib->online && !ib->flag) {
558 serv_got_update(gc, buddy->name, FALSE, 0, 0, 0, 0); 561 gaim_presence_switch_status(presence, "online");
559 ib->online = FALSE; 562 ib->online = FALSE;
560 } 563 }
561 564
562 if (!ib->online && ib->flag) { 565 if (!ib->online && ib->flag) {
563 serv_got_update(gc, buddy->name, TRUE, 0, 0, 0, 0); 566 gaim_presence_switch_status(presence, "offline");
564 ib->online = TRUE; 567 ib->online = TRUE;
565 } 568 }
566 } 569 }
567 570
568 void irc_msg_join(struct irc_conn *irc, const char *name, const char *from, char **args) 571 void irc_msg_join(struct irc_conn *irc, const char *name, const char *from, char **args)

mercurial