| 1742 static void |
1742 static void |
| 1743 irc_parse_topic(struct gaim_connection *gc, char *nick, |
1743 irc_parse_topic(struct gaim_connection *gc, char *nick, |
| 1744 char *word[], char *word_eol[]) |
1744 char *word[], char *word_eol[]) |
| 1745 { |
1745 { |
| 1746 struct gaim_conversation *c = irc_find_chat(gc, word[3]); |
1746 struct gaim_conversation *c = irc_find_chat(gc, word[3]); |
| 1747 char *topic = *word_eol[4] == ':' ? word_eol[4] + 1 : word_eol[4]; |
1747 char *topic = irc_recv_convert(gc, *word_eol[4] == ':' ? word_eol[4] + 1 : word_eol[4]); |
| 1748 char buf[IRC_BUF_LEN]; |
1748 char buf[IRC_BUF_LEN]; |
| 1749 |
1749 |
| 1750 if (c) { |
1750 if (c) { |
| 1751 gaim_chat_set_topic(GAIM_CHAT(c), nick, topic); |
1751 gaim_chat_set_topic(GAIM_CHAT(c), nick, topic); |
| 1752 g_snprintf(buf, sizeof(buf), |
1752 g_snprintf(buf, sizeof(buf), |
| 1753 _("<B>%s has changed the topic to: %s</B>"), nick, topic); |
1753 _("<B>%s has changed the topic to: %s</B>"), nick, topic); |
| 1754 |
1754 |
| 1755 gaim_conversation_write(c, NULL, buf, -1, WFLAG_SYSTEM, time(NULL)); |
1755 gaim_conversation_write(c, NULL, buf, -1, WFLAG_SYSTEM, time(NULL)); |
| 1756 } |
1756 } |
| |
1757 g_free(topic); |
| 1757 } |
1758 } |
| 1758 |
1759 |
| 1759 static gboolean |
1760 static gboolean |
| 1760 irc_parse_part(struct gaim_connection *gc, char *nick, char *cmd, |
1761 irc_parse_part(struct gaim_connection *gc, char *nick, char *cmd, |
| 1761 char *word[], char *word_eol[]) |
1762 char *word[], char *word_eol[]) |