SCP: Avoid potential divide by zero when initially displaying the event queue
This commit is contained in:
parent
e7309d947b
commit
d022ea42a1
1 changed files with 5 additions and 3 deletions
8
scp.c
8
scp.c
|
@ -5971,10 +5971,11 @@ if (sim_clock_queue == QUEUE_LIST_END)
|
|||
fprintf (st, "%s event queue empty, time = %.0f, executing %s instructios/sec\n",
|
||||
sim_name, sim_time, sim_fmt_numeric (sim_timer_inst_per_sec ()));
|
||||
else {
|
||||
const char *tim;
|
||||
const char *tim = "";
|
||||
double inst_per_sec = sim_timer_inst_per_sec ();
|
||||
|
||||
fprintf (st, "%s event queue status, time = %.0f, executing %s instructions/sec\n",
|
||||
sim_name, sim_time, sim_fmt_numeric (sim_timer_inst_per_sec ()));
|
||||
sim_name, sim_time, sim_fmt_numeric (inst_per_sec));
|
||||
accum = 0;
|
||||
for (uptr = sim_clock_queue; uptr != QUEUE_LIST_END; uptr = uptr->next) {
|
||||
if (uptr == &sim_step_unit)
|
||||
|
@ -5990,7 +5991,8 @@ else {
|
|||
}
|
||||
else
|
||||
fprintf (st, " Unknown");
|
||||
tim = sim_fmt_secs(((accum + uptr->time) / sim_timer_inst_per_sec ()) + (uptr->usecs_remaining / 1000000.0));
|
||||
if (inst_per_sec != 0.0)
|
||||
tim = sim_fmt_secs(((accum + uptr->time) / sim_timer_inst_per_sec ()) + (uptr->usecs_remaining / 1000000.0));
|
||||
if (uptr->usecs_remaining)
|
||||
fprintf (st, " at %d plus %.0f usecs%s%s%s%s\n", accum + uptr->time, uptr->usecs_remaining,
|
||||
(*tim) ? " (" : "", tim, (*tim) ? " total)" : "",
|
||||
|
|
Loading…
Add table
Reference in a new issue