Don't always add a colon to custom commands
authorManuel Nickschas <sputnick@quassel-irc.org>
Fri, 14 Mar 2014 17:40:40 +0000 (18:40 +0100)
committerManuel Nickschas <sputnick@quassel-irc.org>
Fri, 14 Mar 2014 17:40:40 +0000 (18:40 +0100)
commit155eda45e862f42a0b9444d615002deda461328d
treee1ccf99e19b011bd423911524d18b1c84ef1479e
parent272037b295143fa5400bf944aca7c9522887259e
Don't always add a colon to custom commands

The IRC spec mandates that spaces be used as separators between the
arguments for a command. However, the last parameter may itself contain
spaces, and to allow this, one can prefix that argument with a colon.

Instead of checking if the colon is needed, Quassel just always added
a colon to the last argument, which usually works fine. However, it broke
some uses of custom server commands.

This fix now checks if the last argument contains a space or starts with
a colon (which then needs to be escaped), and leaves it alone otherwise.

Fixes #1173 - thanks to Gunnar Beutner for providing the patch.
src/core/corenetwork.cpp