http://gilgamesh.hamsterrepublic.com/cgi-bin/bugzilla/show_bug.cgi?id=430


[EMAIL PROTECTED] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED




------- Comment #6 from [EMAIL PROTECTED]  2007-09-03 09:41 -------
Surprisingly, this turned out to be a bug with the script interpreter's
wantimmediate mechanism. Years ago, James wrote
  '--wow! I hope this doesnt screw things up!
and it seems it finally did. The wantimmediate code assumed that any suspended
scripts would be in a wait state (how else would they end up getting suspended
if not by waiting and something else triggering over top of them?) The waiting
scripts would immediately end, so wantimmediate is necessary to reevaluate the
wait conditions. Well, when multiple scripts are triggered, the first ones are
suspended but not waiting, so they get a second execution when they try to wait
but wantimmediate is still set.

A simpler testcase:

 plotscript,autorunscript,begin
  setonkeypressscript (@donothing)
  showtextbox(1)  # text box set to "run realscript next"
 end

 script,donothing ()

 plotscript,realscript, begin
  show value (9999)
  wait
  showvalue(0)
 end

You'll never see 9999 on screen, because the wait is skipped.


-- 
Configure bugmail: 
http://gilgamesh.hamsterrepublic.com/cgi-bin/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

_______________________________________________
Ohrrpgce mailing list
[email protected]
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org

Reply via email to