Move recoding of outgoing messages into irc send_message routine. Handlers for

message own_{private,public} now receive the message in the client encoding.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4890 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Emanuele Giaquinta 2008-11-09 23:33:24 +00:00 committed by exg
commit 9003a61629
4 changed files with 14 additions and 24 deletions

View file

@ -350,7 +350,7 @@ static void cmd_join(const char *data, SERVER_REC *server)
static void cmd_msg(const char *data, SERVER_REC *server, WI_ITEM_REC *item)
{
GHashTable *optlist;
char *target, *origtarget, *msg, *recoded;
char *target, *origtarget, *msg;
void *free_arg;
int free_ret, target_type = SEND_TARGET_NICK;
@ -402,16 +402,14 @@ static void cmd_msg(const char *data, SERVER_REC *server, WI_ITEM_REC *item)
SEND_TARGET_CHANNEL : SEND_TARGET_NICK;
}
}
recoded = recode_out(server, msg, target);
if (target != NULL) {
signal_emit("server sendmsg", 4, server, target, recoded,
signal_emit("server sendmsg", 4, server, target, msg,
GINT_TO_POINTER(target_type));
}
signal_emit(target != NULL && target_type == SEND_TARGET_CHANNEL ?
"message own_public" : "message own_private", 4,
server, recoded, target, origtarget);
server, msg, target, origtarget);
g_free(recoded);
if (free_ret && target != NULL) g_free(target);
cmd_params_free(free_arg);
}