mirror of
https://github.com/unrealircd/unrealircd.git
synced 2026-06-12 17:14:46 +02:00
a1dc459a33
For +H we now temporarily allow overshooting. This only matters for low limits. Multiline batches are atomic so we have to choose to keep them as a whole or remove the complete batch. So if +H 5:1h and the last message was a 15-line multiline event, what do we do? We allow temporary overshooting to store the 15 lines. As said, the alternative would be to store 0 lines which would be worse in terms of functionality, and the small overshoot is defensible. For higher limits (where the +H line limit is bigger than multiline max-lines), we always stay under the +H limit. Eg if all history in a channel consists of 15 line multiline events and we have +H 100 then we will store 90, not 105. It's only for +H linelimit < max-lines that this matters, because there the zero-lines consequence sucks too much ;)