Handle /query and /join without args nicely
authorSebastian Goth <seezer@roath.org>
Wed, 28 Apr 2010 17:16:36 +0000 (19:16 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Sat, 1 May 2010 16:59:25 +0000 (18:59 +0200)
Adapts MR84 to the refactored ClientUserInputHandler
Thanks johu for the initial fix!

Fixes #831 and renders MR84 obsolete.

src/client/clientuserinputhandler.cpp
src/client/clientuserinputhandler.h

index 8abc79d..3e7ece3 100644 (file)
@@ -29,6 +29,7 @@
 #include "network.h"
 #include "types.h"
 #include "bufferinfo.h"
+#include "messagemodel.h"
 
 #include <QDateTime>
 
@@ -81,12 +82,20 @@ void ClientUserInputHandler::handleExec(const BufferInfo &bufferInfo, const QStr
 }
 
 void ClientUserInputHandler::handleJoin(const BufferInfo &bufferInfo, const QString &text) {
+  if(text.isEmpty()) {
+    Client::messageModel()->insertErrorMessage(bufferInfo, tr("/JOIN expects a channel"));
+    return;
+  }
   switchBuffer(bufferInfo.networkId(), text.section(' ', 0, 0));
   // send to core
   defaultHandler("JOIN", bufferInfo, text);
 }
 
 void ClientUserInputHandler::handleQuery(const BufferInfo &bufferInfo, const QString &text) {
+  if(text.isEmpty()) {
+    Client::messageModel()->insertErrorMessage(bufferInfo, tr("/QUERY expects at least a nick"));
+    return;
+  }
   switchBuffer(bufferInfo.networkId(), text.section(' ', 0, 0));
   // send to core
   defaultHandler("QUERY", bufferInfo, text);
index 0b44c91..e27f26e 100644 (file)
@@ -21,7 +21,6 @@
 #ifndef CLIENTUSERINPUTHANDLER_H_
 #define CLIENTUSERINPUTHANDLER_H_
 
-//#include "bufferinfo.h"
 #include "basichandler.h"
 
 class BufferInfo;