X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fsignalproxy.cpp;h=e934a05db2647100d44fd918571c4ac0a97039a2;hp=8d9d8b36c00c5f1a9c9c5d889fddd0d77f5268b6;hb=a2d4978097260c8af1f51ade497071793db2a0c0;hpb=e95dffeaa5d005caa689f8fe34678b95f8fc6736 diff --git a/src/common/signalproxy.cpp b/src/common/signalproxy.cpp index 8d9d8b36..e934a05d 100644 --- a/src/common/signalproxy.cpp +++ b/src/common/signalproxy.cpp @@ -317,7 +317,7 @@ void SignalProxy::removePeer(QIODevice* iodev) { qWarning() << "SignalProxy: unknown QIODevice" << iodev; return; } - + // take a last gasp while(true) { QVariant var; @@ -593,6 +593,11 @@ void SignalProxy::dispatchSignal(const RequestType &requestType, const QVariantL void SignalProxy::receivePeerSignal(QIODevice *sender, const QVariant &packedFunc) { QVariantList params(packedFunc.toList()); + if(params.isEmpty()) { + qWarning() << "SignalProxy::receivePeerSignal(): received incompatible Data:" << packedFunc; + return; + } + int callType = params.takeFirst().value(); switch(callType) {