-
This fixes side effects when system time changes.
-
This performs a whole lot better.
-
Three parts to it: - Start the app fresh per test. This avoids annoyances like getting retained messages on subscribe, messing up the test. - Waiting for suback was apparently necessary. - Because the Qt event loop was given time, waiting for publishes was sometimes pointless because it had already arrived. So, checking the receive list first.
-
Fix version bug.
-
Also include a few stats.
-
This was necessary for publishing will messages from the destructor of a client, when you're connecting two clients with a will, no clean session and the same ID.
-
Shifting signed integers is undefined and only sometimes produced unexpected results. Was detected in packet identifiers in QoS testing.
-
Also fixes not downgrading QoS on subscribe.
-
https://github.com/halfgaar/FlashMQ/issues/2
-
Unsubscribing paths that didn't exist caused creation of null nodes, which subsequent use of the tree crashed on.
-
Found by quinox using AFL.