diff options
-rw-r--r-- | degesch.c | 11 |
1 files changed, 8 insertions, 3 deletions
@@ -5205,9 +5205,14 @@ handle_command_part (struct app_context *ctx, char *arguments) struct server *s = ctx->current_buffer->server; if (*arguments) + { // TODO: check if the arguments are in the form of "channel(,channel)*" - // TODO: make sure to send the reason as one argument - irc_send (s, "PART %s", arguments); + char *channels = cut_word (&arguments); + if (*arguments) + irc_send (s, "PART %s :%s", channels, arguments); + else + irc_send (s, "PART %s", channels); + } else if (ctx->current_buffer->type != BUFFER_CHANNEL) buffer_send_error (ctx, ctx->current_buffer, "%s: %s", "Can't part", @@ -5370,7 +5375,7 @@ g_command_handlers[] = "[<channel>[,<channel>...]]", handle_command_join }, { "part", "Leave channels", - "[<channel>[,<channel>...]]", + "[<channel>[,<channel>...]] [reason]", handle_command_part }, NOT_IMPLEMENTED (cycle) |