Move output recoding in irc_send_cmd_full.

git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4715 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Emanuele Giaquinta 2008-02-16 23:28:53 +00:00 committed by exg
commit 0eb386ecd8
8 changed files with 46 additions and 112 deletions

View file

@ -24,7 +24,6 @@
#include "commands.h"
#include "special-vars.h"
#include "settings.h"
#include "recode.h"
#include "chat-protocols.h"
#include "servers.h"
@ -350,7 +349,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 +401,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);
}