On Wed, Aug 10, 2011 at 5:58 AM, Mark Cave-Ayland < mark.cave-ayland@siriusit.co.uk> wrote:
On 09/08/11 22:55, William Hahne wrote:
BootX will sometimes set the stdout variable to null and then
subsequently call io-emit which can eventually result in an infinite loop.
Index: forth/admin/iocontrol.fs ==============================**==============================**======= --- forth/admin/iocontrol.fs (revision 1041) +++ forth/admin/iocontrol.fs (working copy) @@ -80,6 +80,7 @@ ; : io-emit ( char -- )
- stdout @ 0= if drop exit then \ make sure stdout pointer is not null io-out-char c! io-out-char 1 " write" stdout @ $call-method drop
;
Hmmm isn't this just hiding another bug which is that the stdout variable/defer is being set?
I think it is a bug in BootX (at least I would call it a bug.) Modifying BootX isn't a particularly realistic option so the workaround is necessary.
ATB,
Mark.
-- Mark Cave-Ayland - Senior Technical Architect PostgreSQL - PostGIS Sirius Corporation plc - control through freedom http://www.siriusit.co.uk t: +44 870 608 0063
Sirius Labs: http://www.siriusit.co.uk/labs
-- OpenBIOS http://openbios.org/ Mailinglist: http://lists.openbios.org/**mailman/listinfohttp://lists.openbios.org/mailman/listinfo Free your System - May the Forth be with you
William Hahne