[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#20074: edebug tracing can't be stopped with 'S'
From: |
Alan Mackenzie |
Subject: |
bug#20074: edebug tracing can't be stopped with 'S' |
Date: |
Mon, 16 Mar 2015 11:38:35 +0000 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
Hello, Stefan.
On Sun, Mar 15, 2015 at 11:12:52PM -0400, Stefan Monnier wrote:
> > - (sit-for edebug-sit-for-seconds)) ; Force update and pause.
> > + (if (not (sit-for edebug-sit-for-seconds))
> > + (setq edebug-stop t))) ; Force update and pause.
> Looks much better, thanks. I wonder if the other sit-for call should do
> the same.
You mean for the one for when `edebug-execution-mode' is 'Trace-fast. I
don't think that's the right solution. If we did that, some "S"s from
Trace-fast would get caught by the "(if (input-pending)...)" at L+91,
and the others will get caught by the "(sit-for 0)".
Perhaps a better solution might be to move the "(if (input-pending) ...)"
to just after these two "(sit-for ..)"s, and just before the call to
edebug--recursive-edit. Then all the testing for input events will be
done in the one place. What that `if' form does doesn't seem critical to
the functionality, apart from setting `edebug-stop' to t -
"(edebug-stop)" merely displays "STOP" in the echo area.
> Stefan
--
Alan Mackenzie (Nuremberg, Germany).
Message not available
Message not available
Message not available