cmake: avoid de-duplication of user's CXXFLAGS
[quassel.git] / src / client / clientuserinputhandler.cpp
index 7c839eb..80794d7 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-2018 by the Quassel Project                        *
+ *   Copyright (C) 2005-2022 by the Quassel Project                        *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -91,13 +91,18 @@ 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;
+    auto channelName = text;
+    if (channelName.isEmpty()) {
+        if (bufferInfo.type() == BufferInfo::ChannelBuffer) {
+            channelName = bufferInfo.bufferName();
+        } else {
+            Client::messageModel()->insertErrorMessage(bufferInfo, tr("/JOIN expects a channel"));
+            return;
+        }
     }
-    switchBuffer(bufferInfo.networkId(), text.section(' ', 0, 0));
+    switchBuffer(bufferInfo.networkId(), channelName.section(' ', 0, 0));
     // send to core
-    defaultHandler("JOIN", bufferInfo, text);
+    defaultHandler("JOIN", bufferInfo, channelName);
 }
 
 void ClientUserInputHandler::handleQuery(const BufferInfo& bufferInfo, const QString& text)