File tree Expand file tree Collapse file tree 1 file changed +17
-4
lines changed
Expand file tree Collapse file tree 1 file changed +17
-4
lines changed Original file line number Diff line number Diff line change @@ -672,12 +672,25 @@ void update_draw_pres_fac(const float /*new_pres_fac*/) {
672672
673673#ifndef NO_GRAPHICS
674674void update_router_info_and_check_bp (bp_router_type type, int net_id) {
675- if (type == BP_ROUTE_ITER)
675+ bool hit_bp = false ;
676+ if (type == BP_ROUTE_ITER) {
676677 get_bp_state_globals ()->get_glob_breakpoint_state ()->router_iter ++;
677- else if (type == BP_NET_ID)
678+ hit_bp = check_for_breakpoints (false );
679+ } else if (type == BP_NET_ID) {
680+ // Between net id iters, check only net id and expression breakpoints
678681 get_bp_state_globals ()->get_glob_breakpoint_state ()->route_net_id = net_id;
679- f_router_debug = check_for_breakpoints (false );
680- if (f_router_debug) {
682+ t_draw_state* draw_state = get_draw_state_vars ();
683+ for (size_t i = 0 ; i < draw_state->list_of_breakpoints .size (); i++) {
684+ if (draw_state->list_of_breakpoints [i].type == BT_ROUTE_NET_ID && draw_state->list_of_breakpoints [i].active ) {
685+ hit_bp = check_for_route_net_id_iter_breakpoints (draw_state->list_of_breakpoints [i].bt_route_net_id );
686+ break ;
687+ } else if (draw_state->list_of_breakpoints [i].type == BT_EXPRESSION && draw_state->list_of_breakpoints [i].active ) {
688+ hit_bp = check_for_expression_breakpoints (draw_state->list_of_breakpoints [i].bt_expression , false );
689+ break ;
690+ }
691+ }
692+ }
693+ if (hit_bp) {
681694 breakpoint_info_window (get_bp_state_globals ()->get_glob_breakpoint_state ()->bp_description , *get_bp_state_globals ()->get_glob_breakpoint_state (), false );
682695 update_screen (ScreenUpdatePriority::MAJOR, " Breakpoint Encountered" , ROUTING, nullptr );
683696 }
You can’t perform that action at this time.
0 commit comments