Changes in irc_im.c [b95d03b:5ebff60]
Legend:
- Unmodified
- Added
- Removed
-
irc_im.c
rb95d03b r5ebff60 235 235 } else { 236 236 /* Modules can swallow messages. */ 237 goto cleanup;237 return TRUE; 238 238 } 239 239 } … … 250 250 wrapped = word_wrap(msg, 425); 251 251 irc_send_msg(iu, "PRIVMSG", dst, wrapped, prefix); 252 252 253 g_free(wrapped); 253 254 cleanup:255 254 g_free(prefix); 256 255 g_free(msg); … … 292 291 293 292 irc_send_msg((irc_user_t *) bu->ui_data, "NOTICE", irc->user->nick, msg->str, NULL); 294 295 g_string_free(msg, TRUE);296 293 297 294 return TRUE; … … 698 695 irc_t *irc = bee->ui_data; 699 696 irc_channel_t *ic = c->ui_data, *oic; 700 char *stripped, *full_name; 701 gsize bytes_written; 697 char stripped[MAX_NICK_LENGTH + 1], *full_name; 702 698 703 699 if (ic == NULL) { … … 710 706 } 711 707 712 stripped = g_convert_with_fallback(name, -1, "ASCII//TRANSLIT", "UTF-8", "", NULL, &bytes_written, NULL); 713 if (bytes_written > MAX_NICK_LENGTH) { 714 stripped[MAX_NICK_LENGTH] = '\0'; 715 } 716 708 strncpy(stripped, name, MAX_NICK_LENGTH); 709 stripped[MAX_NICK_LENGTH] = '\0'; 717 710 irc_channel_name_strip(stripped); 718 711 if (set_getbool(&bee->set, "lcnicks")) { … … 721 714 722 715 if (stripped[0] == '\0') { 723 g_free(stripped);724 716 return FALSE; 725 717 } 726 718 727 719 full_name = g_strdup_printf("#%s", stripped); 728 g_free(stripped);729 720 if ((oic = irc_channel_by_name(irc, full_name))) { 730 721 char *type, *chat_type;
Note: See TracChangeset
for help on using the changeset viewer.