utimers when called with .tcl partyline it shows a list with all utimers.
But when I call utimers from another proc which gets invoked by a bind it returns always nothing. Even when there are still utimers (which I see, I tested to type .tcl utimers on partyline again).
Why is that?
I also testet set utimers [uplevel #0 { utimers }], still didn't work.
desired,
this sounds like a bug to me. However, I am not able to reproduce it myself. What kind of binding did you use?
As for uplevel, the context of where utimers is invoked should not matter, as timers are always stored and accessed on a global scope.
willyw,
For that piece of code to work as expected, one should NOT use square brackets. The idea is for the code block to be evaluated at a different context than the current - which is why we do not want any command substitutions done in the current context.
Ok, I was able to reproduce it. Here is a script which I wrote to show you the error. It has been tested and hopefully I did not mess up and you can reproduce it.