check for qca provider plugin, fixes #1045
[quassel.git] / src / core / ircparser.cpp
index 2a06811..b372e35 100644 (file)
@@ -50,12 +50,18 @@ QByteArray IrcParser::decrypt(Network *network, const QString &bufferName, const
   if(message.isEmpty())
     return message;
 
+  if(!Cipher::neededFeaturesAvailable())
+    return message;
+
   Cipher *cipher = qobject_cast<CoreNetwork *>(network)->cipher(bufferName);
   if(!cipher)
     return message;
 
   return isTopic? cipher->decryptTopic(message) : cipher->decrypt(message);
 #else
+  Q_UNUSED(network);
+  Q_UNUSED(bufferName);
+  Q_UNUSED(isTopic);
   return message;
 #endif
 }
@@ -175,7 +181,6 @@ void IrcParser::processNetworkIncoming(NetworkDataEvent *e) {
         msg = decrypt(net, target, msg);
 
         events << new IrcEventRawMessage(EventManager::IrcEventRawPrivmsg, net, msg, prefix, target, e->timestamp());
-        //events << new MessageEvent(Message::Plain, net, net->channelDecode(target, msg), target, prefix);
       }
     }
     break;
@@ -214,7 +219,7 @@ void IrcParser::processNetworkIncoming(NetworkDataEvent *e) {
           if(!net->isChannelName(target))
             target = nickFromMask(prefix);
         }
-        events << new IrcEventRawMessage(EventManager::IrcEventRawNotice, net, msg, prefix, target, e->timestamp());
+        events << new IrcEventRawMessage(EventManager::IrcEventRawNotice, net, params[1], prefix, target, e->timestamp());
       }
     }
     break;