void ClientSyncer::clientInitAck(const QVariantMap &msg) {
// Core has accepted our version info and sent its own. Let's see if we accept it as well...
- if((msg.contains("CoreBuild") && msg["CoreBuild"].toUInt() < 732) // legacy!
- || (!msg.contains("CoreBuild") && msg["ProtocolVersion"].toUInt() < Global::clientNeedsProtocol)) {
+ uint ver = 0;
+ if(!msg.contains("ProtocolVersion") && msg["CoreBuild"].toUInt() >= 732) ver = 1; // legacy!
+ if(msg.contains("ProtocolVersion")) ver = msg["ProtocolVersion"].toUInt();
+ if(ver < Global::clientNeedsProtocol) {
emit connectionError(tr("<b>The Quassel Core you are trying to connect to is too old!</b><br>"
"Need at least core/client protocol v%1 to connect.").arg(Global::clientNeedsProtocol));
disconnectFromCore();
QVariantMap reply;
// Just version information -- check it!
- if((msg.contains("ClientBuild") && msg["ClientBuild"].toUInt() < 732)
- || (!msg.contains("ClientBuild") && msg["ProtocolVersion"].toUInt() < Global::coreNeedsProtocol)) {
+ uint ver = 0;
+ if(!msg.contains("ProtocolVersion") && msg["ClientBuild"].toUInt() >= 732) ver = 1; // FIXME legacy
+ if(msg.contains("ProtocolVersion")) ver = msg["ProtocolVersion"].toUInt();
+ if(ver < Global::coreNeedsProtocol) {
reply["MsgType"] = "ClientInitReject";
reply["Error"] = tr("<b>Your Quassel Client is too old!</b><br>"
"This core needs at least client/core protocol version %1.<br>"