kicad/pcbnew/router
Seth Hillbrand 901c330478 Update end item before moving on track/via change
The move even dereferences m_enditem for logging and perhaps other
actions.  We need to ensure that the end item has not been invalidated
before taking this action

Fixes https://gitlab.com/kicad/code/kicad/issues/10732
2022-03-02 09:21:52 -08:00
..
CMakeLists.txt router: factor out POSTURE_SOLVER to more generic MOUSE_TRAIL_TRACER class 2021-02-25 17:18:23 +01:00
length_tuner_tool.cpp Fix ordering of initialization in length tuner 2021-09-14 07:48:02 -04:00
length_tuner_tool.h Add length tuner settings to toolbar context menu 2021-05-12 02:34:52 +00:00
pns_algo_base.cpp More NULL expunging. 2021-07-20 07:27:18 -04:00
pns_algo_base.h router: expose current view area to the router algorithms so that the optimizer could know not to mess with traces/vias not currently visible to the user (wip) 2021-02-25 17:18:23 +01:00
pns_arc.cpp Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_arc.h PNS: Pick up segments directly between pads when dragging components 2021-07-03 19:50:04 -04:00
pns_component_dragger.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_component_dragger.h PNS: Pick up segments directly between pads when dragging components 2021-07-03 19:50:04 -04:00
pns_debug_decorator.h Pass VECTOR2I objects by reference instead of on the stack. 2021-07-27 08:41:27 -04:00
pns_diff_pair.cpp Fix success conditions in DP placer 2021-12-12 13:05:38 -05:00
pns_diff_pair.h More NULL expunging. 2021-07-20 07:27:18 -04:00
pns_diff_pair_placer.cpp Fix success conditions in DP placer 2021-12-12 13:05:38 -05:00
pns_diff_pair_placer.h Allow changing router mode while routing 2021-10-12 09:55:34 -07:00
pns_dp_meander_placer.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_dp_meander_placer.h
pns_drag_algo.h
pns_dragger.cpp Be more diligent in preventing drag line errors 2022-01-31 16:09:14 -08:00
pns_dragger.h router: support for drag/walkaround/shove for joints between lines of different widths. 2021-06-03 22:44:53 +02:00
pns_index.cpp More NULL expunging. 2021-07-20 07:27:18 -04:00
pns_index.h Rename layer ids file. 2021-07-29 16:03:25 +01:00
pns_item.cpp Teach router about different keepout rules. 2021-11-27 00:55:04 +00:00
pns_item.h Don't hide original object when highlight is only part of it. 2021-11-25 23:42:13 +00:00
pns_itemset.cpp PNS: fix some weirdness identified by PVS 2021-04-07 23:16:56 -04:00
pns_itemset.h More NULL expunging. 2021-07-20 07:27:18 -04:00
pns_joint.h PNS: Fix tuning calculations through locked segments 2021-12-05 13:35:28 -05:00
pns_kicad_iface.cpp Don't use bounding box cache during insideArea. 2022-02-13 18:20:31 +00:00
pns_kicad_iface.h PNS: Fix rule resolution when starting from PTH 2021-10-23 22:46:31 -04:00
pns_layerset.h
pns_line.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_line.h PNS: Fix dragging of segments with arcs in line 2021-04-11 10:18:57 -04:00
pns_line_placer.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_line_placer.h router: fix use-after-free crash in single trace shove routing when m_endItem's owning NODE is erased by the springback algorithm. 2021-12-15 01:33:05 +01:00
pns_link_holder.h More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_linked_item.h
pns_logger.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_logger.h Don't convert KIID on the fly 2022-02-03 10:34:14 -08:00
pns_meander.cpp Length Tuner: Allow single meander when it fits on its own 2021-09-28 18:50:31 +01:00
pns_meander.h Length Tuner: Allow controlling the side of the meander using the cursor 2021-09-28 18:50:31 +01:00
pns_meander_placer.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_meander_placer.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_meander_placer_base.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_meander_placer_base.h Meander minimum spacing can be equal to track width + minimum clearance 2021-06-29 19:30:01 +01:00
pns_meander_skew_placer.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_meander_skew_placer.h PNS: Account for via stack height in diff pair length tuner 2021-04-20 19:31:10 -04:00
pns_mouse_trail_tracer.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_mouse_trail_tracer.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_node.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_node.h PNS: Fix tuning calculations through locked segments 2021-12-05 13:35:28 -05:00
pns_optimizer.cpp router: disable 'limit corner count' optimization for via dragging 2021-11-22 00:05:17 +01:00
pns_optimizer.h Pass VECTOR2I objects by reference instead of on the stack. 2021-07-27 08:41:27 -04:00
pns_placement_algo.h Fix source comment / documentation typos 2021-06-09 19:32:58 +00:00
pns_router.cpp router: added missing case items (fixes regression in component dragging) 2021-12-15 23:18:55 +01:00
pns_router.h router: when dragging segments, don't snap to other segments on the same layer. Fixes drag flickering for short segments. 2021-12-15 01:48:04 +01:00
pns_routing_settings.cpp PNS: Add support for 90-degree corner modes 2021-11-03 02:14:23 +00:00
pns_routing_settings.h Remove RM_Smart state from router tool 2021-12-01 09:52:37 +00:00
pns_segment.h
pns_shove.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_shove.h router: fix use-after-free crash in single trace shove routing when m_endItem's owning NODE is erased by the springback algorithm. 2021-12-15 01:33:05 +01:00
pns_sizes_settings.cpp Honour pre-defined-size selections for diff pairs. 2021-03-02 12:12:05 +00:00
pns_sizes_settings.h Add feedback showing current router state to the message panel 2021-07-03 13:21:51 -04:00
pns_solid.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_solid.h More NULL expunging. 2021-07-20 07:27:18 -04:00
pns_tool_base.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_tool_base.h Pass VECTOR2I objects by reference instead of on the stack. 2021-07-27 08:41:27 -04:00
pns_topology.cpp PNS: Fix tuning calculations through locked segments 2021-12-05 13:35:28 -05:00
pns_topology.h PNS: Fix tuning calculations through locked segments 2021-12-05 13:35:28 -05:00
pns_tune_status_popup.cpp Better colors for length tuning popup in dark mode 2021-04-04 20:33:59 -04:00
pns_tune_status_popup.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_utils.cpp router: include arc approximation tollerance in arc hull clearance calculation 2022-02-17 09:22:19 -08:00
pns_utils.h router: P&S-specific hull/line interection function that correctly rejects segments/vertices that only touch the hull polygons without penetrating them 2021-05-29 00:13:24 +02:00
pns_via.cpp Show holes in router preview items for vias. 2021-11-20 12:21:24 +00:00
pns_via.h Show holes in router preview items for vias. 2021-11-20 12:21:24 +00:00
pns_walkaround.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
pns_walkaround.h
range.h
ranged_num.h
router_preview_item.cpp More wide-string declarations. 2022-02-05 13:29:00 +00:00
router_preview_item.h Don't make inferences about object type based on shape. 2021-12-01 19:44:30 +00:00
router_tool.cpp Update end item before moving on track/via change 2022-03-02 09:21:52 -08:00
router_tool.h Use router to update message panel when routing. 2022-02-20 13:54:01 +00:00
time_limit.cpp
time_limit.h