Don't allow newlines in buffer names
authorManuel Nickschas <sputnick@quassel-irc.org>
Mon, 8 Feb 2016 20:29:14 +0000 (21:29 +0100)
committerManuel Nickschas <sputnick@quassel-irc.org>
Mon, 8 Feb 2016 20:29:14 +0000 (21:29 +0100)
Since it is possible to enter newlines when renaming a buffer via
the GUI, we need to have a sanity check that cuts off the additional
lines.

Fixes #1389.

src/client/networkmodel.cpp

index 4d49efb..ddc71dd 100644 (file)
@@ -463,6 +463,12 @@ bool QueryBufferItem::setData(int column, const QVariant &value, int role)
     case Qt::EditRole:
     {
         QString newName = value.toString();
+
+        // Sanity check - buffer names must not contain newlines!
+        int nlpos = newName.indexOf('\n');
+        if (nlpos >= 0)
+            newName = newName.left(nlpos);
+
         if (!newName.isEmpty()) {
             Client::renameBuffer(bufferId(), newName);
             return true;