A procedural error can affect memory over time.
I noticed that when using /SOCKREAD &BINVAR and if during the Sockread Event I do:
if ($sockbr == 0) return
This BinVar is not removed from memory.
The mIRC examples basically show /SOCKREAD %VAR
For this reason the code should be:
if ($sockbr == 0) { bunset &BINVAR | return }
ON *:SOCKREAD:mySocket:{
if ($sockerr > 0) { return }
sockread &MyVar
;ERROR MEMORY
if (!$sockbr) return
;FREE MEMORY
if (!$sockbr) { bunset &MyVar | return }
;;;
Your Code
}
If you have a recurring Socket command, you will notice your memory gradually rising without stopping.
https://en.wikichip.org/wiki/mirc/on_events/on_sockreadhttps://en.wikichip.org/wiki/mirc/commands/sockreadThanks!