Fix assertion fail handling certain conditional delays

When conditional delays are in use, it is sometimes possible for there
to be no delays available for a given input event. In that case, skip
the delay processing for that case instead of crashing.
This commit is contained in:
Stephen Williams 2008-01-21 19:57:17 -08:00
parent 10d25d2b88
commit db25bba0d0
1 changed files with 10 additions and 0 deletions

View File

@ -387,6 +387,16 @@ void vvp_fun_modpath::recv_vec4(vvp_net_ptr_t port, const vvp_vector4_t&bit)
}
}
/* Handle the special case that there are no delays that
match. This may happen, for example, if the set of
conditional delays is incomplete, leaving some cases
uncovered. In that case, just pass the data without delay */
if (src == 0) {
cur_vec4_ = bit;
schedule_generic(this, 0, false);
return;
}
assert(src);
vvp_time64_t out_at[12];