Keep old clients from removing message rate delay
[quassel.git] / src / common / network.cpp
index 4e14af4..d768837 100644 (file)
@@ -707,9 +707,10 @@ void Network::setUseCustomMessageRate(bool useCustomRate)
 void Network::setMessageRateBurstSize(quint32 burstSize)
 {
     if (burstSize < 1) {
-        // Can't go slower than one message at a time
-        qWarning() << "Received invalid setMessageRateBurstSize data, cannot have zero message "
-                      "burst size!" << burstSize;
+        // Can't go slower than one message at a time.  Also blocks old clients from trying to set
+        // this to 0.
+        qWarning() << "Received invalid setMessageRateBurstSize data - message burst size must be "
+                      "non-zero positive, given" << burstSize;
         return;
     }
     if (_messageRateBurstSize != burstSize) {
@@ -723,6 +724,13 @@ void Network::setMessageRateBurstSize(quint32 burstSize)
 
 void Network::setMessageRateDelay(quint32 messageDelay)
 {
+    if (messageDelay == 0) {
+        // Nonsensical to have no delay - just check the Unlimited box instead.  Also blocks old
+        // clients from trying to set this to 0.
+        qWarning() << "Received invalid setMessageRateDelay data - message delay must be non-zero "
+                      "positive, given" << messageDelay;
+        return;
+    }
     if (_messageRateDelay != messageDelay) {
         _messageRateDelay = messageDelay;
         SYNC(ARG(messageDelay))