mIRC Homepage
Posted By: baa stack overflow - 02/11/05 11:37 AM
(it's hard to search, so this bug may be already reported)
alias test test2
alias test2 test
now do /test
mirc crash

it's sometimes hard for scripter to findout where the problem is. pls add a check for each alias call

a script debug backtrace (caller list) is better to find out what cause a error btw.
Posted By: Kelder Re: stack overflow - 02/11/05 12:03 PM
I think this thread is about the same problem, it also contains this link to another thread. Basically, if you try this with any other version of mIRC than 6.16, it will give a warning and stop recursion. This protection seems broken in v6.16 though, let's hope it will be back in the next mIRC release...
Posted By: NaquadaServ Re: stack overflow - 06/11/05 06:34 PM
Not sure if this will help you or not... I prefer to use signals for recursion...

example:
Code:
alias do_recurse { .signal Recurse 1 }
on *:signal:Recurse_Test:{
  echo Recurse Start: Level $1
  if ($1 < 4) { .signal -n $signal $calc($1 + 1) }
  echo Recurse End: Level $1
}


Now if you start every recursive signal name with the word Recurse, you could do the following (in a different script file)...

Code:
on *:signal:Recurse*:{ write -a signal.log $signal : $1- }


Naquada
Posted By: baa Re: stack overflow - 25/11/05 08:55 AM
thanks, but i don't want recursion, i just have some alias call each other with a long chain by accident. in come case
too hard to figure it out without a backtrace
© mIRC Discussion Forums