|
From: | Ken Raeburn |
Subject: | bug#3892: corrupting load-in-progress value with "let" |
Date: | Thu, 23 Jul 2009 20:08:39 -0400 |
On Jul 21, 2009, at 14:44, Ken Raeburn wrote:
On Jul 21, 2009, at 12:27, Stefan Monnier wrote:I think we should drop the counter altogether, and use specbind instead.Much simpler, yes, and it looks like nothing in the C code cares about the numeric value either.Thanks for the suggestion; I'll revise my patch.
I'm working on the revised patch, but it occurs to me that this way, some broken bit of code could set load-in-progress to t at some point when nothing is being loaded, and it will never become nil again unless explicitly reset. I'm not sure that's right either. I think I kind of like the behavior that while code can temporarily override it, the correct state will be restored from the C code any time it changes (file loading starts or completes).
A related issue: If we're changing the way it's set, should we retain the constraint that load-in-progress can only (appear to) hold boolean values, or let it hold any Lisp value instead?
Ken
[Prev in Thread] | Current Thread | [Next in Thread] |