Ticket #343 (WontFix)Sun May 05 20:27:36 UTC 2013
Calling Wimp_Poll outside of a valid task and outside the desktop will hang the system
Reported by: | Rick Murray (539) | Severity: | Normal |
Part: | Release: | ||
Milestone: | Status | WontFix |
Details by Rick Murray (539):
Calling Wimp_Poll outside of a valid task and outside the desktop will hang the system.
Example code:
<pre><code>10DIM b% 256
20SYS “Wimp_Poll”,0,b% TO e%
30PRINT e%
40GOTO 10</code></pre>
Not wonderful code, but press F12
, go to BASIC, enter the above, and watch it all go wrong. Unresponsive to keypresses.
Tested on RPCEmu.
Changelog:
Modified by Sprow (202) Mon, May 06 2013 - 08:36:54 GMT
Perhaps because line 40 you go back and leak another 256 bytes?
Even after correcting that, nothing unusual happened, the Wimp was polled and (as it happens I left an !Edit window open) keypresses were captured.
Given the registers passed to Wimp_Poll, how would the Wimp know you weren’t a valid task? Some BASIC running from ShellCLI is running in ShellCLI (a valid task). It couldn’t validate by address because you can call Wimp_Poll from anywhere you want (the Wimp itself calls it in a couple of places).
Modified by Sprow (202) Fri, May 10 2013 - 07:02:40 GMT
- Status changed from Open to WontFix