summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/chat-commands.c8
-rw-r--r--src/fe-common/core/fe-messages.c18
-rw-r--r--src/fe-common/irc/fe-irc-messages.c7
-rw-r--r--src/irc/core/irc-servers.c5
4 files changed, 14 insertions, 24 deletions
diff --git a/src/core/chat-commands.c b/src/core/chat-commands.c
index 705ccb6b..d75522d9 100644
--- a/src/core/chat-commands.c
+++ b/src/core/chat-commands.c
@@ -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);
}
diff --git a/src/fe-common/core/fe-messages.c b/src/fe-common/core/fe-messages.c
index 73dd40fc..91cb840a 100644
--- a/src/fe-common/core/fe-messages.c
+++ b/src/fe-common/core/fe-messages.c
@@ -259,7 +259,7 @@ static void sig_message_own_public(SERVER_REC *server, const char *msg,
WINDOW_REC *window;
CHANNEL_REC *channel;
char *nickmode;
- char *freemsg = NULL, *recoded;
+ char *freemsg = NULL;
int print_channel;
channel = channel_find(server, target);
if (channel != NULL)
@@ -280,18 +280,14 @@ static void sig_message_own_public(SERVER_REC *server, const char *msg,
if (settings_get_bool("emphasis"))
msg = freemsg = expand_emphasis((WI_ITEM_REC *) channel, msg);
- /* ugly: recode the sent message back for printing */
- recoded = recode_in(server, msg, target);
-
if (!print_channel) {
printformat(server, target, MSGLEVEL_PUBLIC | MSGLEVEL_NOHILIGHT | MSGLEVEL_NO_ACT,
- TXT_OWN_MSG, server->nick, recoded, nickmode);
+ TXT_OWN_MSG, server->nick, msg, nickmode);
} else {
printformat(server, target, MSGLEVEL_PUBLIC | MSGLEVEL_NOHILIGHT | MSGLEVEL_NO_ACT,
- TXT_OWN_MSG_CHANNEL, server->nick, target, recoded, nickmode);
+ TXT_OWN_MSG_CHANNEL, server->nick, target, msg, nickmode);
}
- g_free(recoded);
g_free_not_null(nickmode);
g_free_not_null(freemsg);
}
@@ -300,7 +296,7 @@ static void sig_message_own_private(SERVER_REC *server, const char *msg,
const char *target, const char *origtarget)
{
QUERY_REC *query;
- char *freemsg = NULL, *recoded;
+ char *freemsg = NULL;
g_return_if_fail(server != NULL);
g_return_if_fail(msg != NULL);
@@ -323,15 +319,11 @@ static void sig_message_own_private(SERVER_REC *server, const char *msg,
if (settings_get_bool("emphasis"))
msg = freemsg = expand_emphasis((WI_ITEM_REC *) query, msg);
- /* ugly: recode the sent message back for printing */
- recoded = recode_in(server, msg, target);
-
printformat(server, target,
MSGLEVEL_MSGS | MSGLEVEL_NOHILIGHT | MSGLEVEL_NO_ACT,
query == NULL ? TXT_OWN_MSG_PRIVATE :
- TXT_OWN_MSG_PRIVATE_QUERY, target, recoded, server->nick);
+ TXT_OWN_MSG_PRIVATE_QUERY, target, msg, server->nick);
- g_free(recoded);
g_free_not_null(freemsg);
}
diff --git a/src/fe-common/irc/fe-irc-messages.c b/src/fe-common/irc/fe-irc-messages.c
index 4b2301c3..c3396951 100644
--- a/src/fe-common/irc/fe-irc-messages.c
+++ b/src/fe-common/irc/fe-irc-messages.c
@@ -68,7 +68,7 @@ static void sig_message_own_public(SERVER_REC *server, const char *msg,
const char *target, const char *origtarget)
{
const char *oldtarget;
- char *nickmode, *recoded;
+ char *nickmode;
oldtarget = target;
target = skip_target(IRC_SERVER(server), target);
@@ -78,15 +78,12 @@ static void sig_message_own_public(SERVER_REC *server, const char *msg,
nickmode = channel_get_nickmode(channel_find(server, target),
server->nick);
- /* ugly: recode the sent message back for printing */
- recoded = recode_in(SERVER(server), msg, target);
printformat_module("fe-common/core", server, target,
MSGLEVEL_PUBLIC | MSGLEVEL_NOHILIGHT |
MSGLEVEL_NO_ACT,
TXT_OWN_MSG_CHANNEL,
- server->nick, oldtarget, recoded, nickmode);
+ server->nick, oldtarget, msg, nickmode);
g_free(nickmode);
- g_free(recoded);
signal_stop();
}
diff --git a/src/irc/core/irc-servers.c b/src/irc/core/irc-servers.c
index 99574c57..9055bb4a 100644
--- a/src/irc/core/irc-servers.c
+++ b/src/irc/core/irc-servers.c
@@ -79,6 +79,7 @@ static void send_message(SERVER_REC *server, const char *target,
IRC_SERVER_REC *ircserver;
CHANNEL_REC *channel;
char *str;
+ char *recoded;
ircserver = IRC_SERVER(server);
g_return_if_fail(ircserver != NULL);
@@ -92,9 +93,11 @@ static void send_message(SERVER_REC *server, const char *target,
target = channel->name;
}
- str = g_strdup_printf("PRIVMSG %s :%s", target, msg);
+ recoded = recode_out(SERVER(server), msg, target);
+ str = g_strdup_printf("PRIVMSG %s :%s", target, recoded);
irc_send_cmd_split(ircserver, str, 2, ircserver->max_msgs_in_cmd);
g_free(str);
+ g_free(recoded);
}
static void server_init(IRC_SERVER_REC *server)