Fix the debugger to finish correctly.

A previous patch I submitted to try and keep the $finish time
events missed the case of an infinite loop that did not advance
the micro time step which then prevents the debugger from
generating a finish (you can interrupt an infinite loop, but you
could not finish out of it). This patch adds a check for a
finish after each debugger call to fix this problem.
This commit is contained in:
Cary R 2007-11-12 18:05:52 -08:00 committed by Stephen Williams
parent 9759c19734
commit 4b755deea0
1 changed files with 2 additions and 0 deletions

View File

@ -623,6 +623,8 @@ void schedule_simulate(void)
if (schedule_stopped_flag) {
schedule_stopped_flag = false;
stop_handler(0);
// You can finish from the debugger without a time change.
if (!schedule_runnable) break;
continue;
}