diff options
author | Jesusaves <cpntb1@ymail.com> | 2025-01-09 22:17:55 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2025-01-09 22:17:55 -0300 |
commit | d6efedb34b430ee004d9bf400c7eed2a140a4714 (patch) | |
tree | 38331da738452a21a57f31e33996dcfee4b32bfc | |
parent | 4bb46b8d24631c7c22a02743edbdae193a17d259 (diff) | |
download | serverdata-d6efedb34b430ee004d9bf400c7eed2a140a4714.tar.gz serverdata-d6efedb34b430ee004d9bf400c7eed2a140a4714.tar.bz2 serverdata-d6efedb34b430ee004d9bf400c7eed2a140a4714.tar.xz serverdata-d6efedb34b430ee004d9bf400c7eed2a140a4714.zip |
Fix integer overflow in multiple scripts, but most notably, Ofelia.
It was harmless, in the end?
-rw-r--r-- | npc/functions/bitwise.txt | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/npc/functions/bitwise.txt b/npc/functions/bitwise.txt index 023606629..eadfb30ce 100644 --- a/npc/functions/bitwise.txt +++ b/npc/functions/bitwise.txt @@ -56,6 +56,10 @@ function script bitmask_count { // Loop only as needed while (.@s < .@n) { + // Safeguard (2,147,483,647 is INT_MAX) + if (.@m >= 31) + break; + // Actual calculation .@s=2**.@m; if (.@n & .@s) .@p++; |