summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/commands.c4
-rw-r--r--src/fe-common/irc/completion.c9
2 files changed, 11 insertions, 2 deletions
diff --git a/src/core/commands.c b/src/core/commands.c
index 1dfd8b71..a2c92ef1 100644
--- a/src/core/commands.c
+++ b/src/core/commands.c
@@ -387,6 +387,10 @@ static void parse_outgoing(const char *line, SERVER_REC *server, void *item)
if (strchr(cmdchars, *line) == NULL)
return; /* handle only /commands here */
line++;
+ if (*line == ' ') {
+ /* "/ text" = same as sending "text" to active channel. */
+ return;
+ }
/* //command ignores aliases */
if (strchr(cmdchars, *line) != NULL) {
diff --git a/src/fe-common/irc/completion.c b/src/fe-common/irc/completion.c
index 444a3a06..b710dd67 100644
--- a/src/fe-common/irc/completion.c
+++ b/src/fe-common/irc/completion.c
@@ -305,8 +305,13 @@ static void event_command(gchar *line, IRC_SERVER_REC *server, WI_IRC_REC *item)
if (!irc_item_check(item))
return;
- if (strchr(settings_get_str("cmdchars"), *line) != NULL)
- return;
+ if (strchr(settings_get_str("cmdchars"), *line) != NULL) {
+ if (line[1] != ' ')
+ return;
+
+ /* "/ text" = same as sending "text" to active channel. */
+ line += 2;
+ }
line = g_strdup(line);