was still being requested.
Breaks core protocol, because somebody *cough* forgot to serialize the MsgId of Message objects...
}
void Buffer::prependMsg(const Message &msg) {
+ // check for duplicate first
+ if(contents().count() > 0 && msg.msgId() >= contents().first()->msgId()) {
+ return;
+ }
updateActivityLevel(msg);
layoutQueue.append(msg);
}
*/
QDataStream &operator<<(QDataStream &out, const Message &msg) {
- out << (quint32)msg.timestamp().toTime_t() << (quint32)msg.type() << (quint8)msg.flags()
+ out << msg.msgId() << (quint32)msg.timestamp().toTime_t() << (quint32)msg.type() << (quint8)msg.flags()
<< msg.bufferInfo() << msg.sender().toUtf8() << msg.text().toUtf8();
return out;
}
quint32 ts;
QByteArray s, m;
BufferInfo buf;
- in >> ts >> t >> f >> buf >> s >> m;
+ in >> msg._msgId >> ts >> t >> f >> buf >> s >> m;
msg._type = (Message::Type)t;
msg._flags = (quint8)f;
msg._bufferInfo = buf;
inline bool operator==(const SignedId &other) const { return id == other.id; }
inline bool operator!=(const SignedId &other) const { return id != other.id; }
inline bool operator<(const SignedId &other) const { return id < other.id; }
+ inline bool operator>(const SignedId &other) const { return id > other.id; }
+ inline bool operator>=(const SignedId &other) const { return id >= other.id; }
inline bool operator==(int i) const { return id == i; }
inline bool operator!=(int i) const { return id != i; }
inline bool operator<(int i) const { return id < i; }
quasselVersion = "0.2.0-pre";
quasselDate = "2008-02-20";
- quasselBuild = 564;
+ quasselBuild = 563;
//! Minimum client build number the core needs
- clientBuildNeeded = 559;
+ clientBuildNeeded = 563;
clientVersionNeeded = quasselVersion;
//! Minimum core build number the client needs
- coreBuildNeeded = 559;
+ coreBuildNeeded = 563;
coreVersionNeeded = quasselVersion;
}