kicad/pcbnew
Seth Hillbrand 406de56964 pcbnew: Prevent use of non-connected item in ratsnest
We need to be careful in the connectivity system to always use
dyn_cast/dynamic_cast and check the return when dealing with board
items.  Getting non-connected items will result in null nets when
propagated.

Fixes https://gitlab.com/kicad/code/kicad/issues/5082
2020-08-07 13:38:51 -07:00
..
altium2kicadpcb_plugin Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
autorouter pcbnew: Move ratsnest items to separate folder 2020-06-16 11:15:14 -07:00
board_stackup_manager Give the user a bit of help with board thickness. 2020-08-05 16:51:58 +01:00
connectivity pcbnew: Prevent use of non-connected item in ratsnest 2020-08-07 13:38:51 -07:00
dialogs Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
drc Be more flexible with user input; more multibyte safety. 2020-08-06 19:38:06 +01:00
exporters Switch to ordered_json and enable ignore_comments parser option 2020-08-02 13:11:16 +00:00
github Add text variable support to envVar processing. 2020-04-05 20:52:26 +01:00
import_gfx Remove declaration "using std::unique_ptr" in a header. 2020-05-09 08:10:44 +02:00
microwave Remove a bunch of globals. 2020-04-16 17:34:46 +01:00
netlist_reader Remove unused nets when updating PCB. 2020-07-13 22:41:56 +01:00
pcad2kicadpcb_plugin Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
python Fix remaining python method name error 2020-04-20 23:24:55 +01:00
ratsnest Remove accidentally committed test file 2020-07-18 13:03:22 -07:00
router PNS: Remove items from all layers 2020-08-05 19:39:55 -07:00
specctra_import_export Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
swig Pcbnew: fix a python interface issue ( a not defined constant in some modules). 2020-07-30 10:42:23 +02:00
tools pcbnew: Prevent use of non-connected item in ratsnest 2020-08-07 13:38:51 -07:00
widgets Save selection filter state in project local settings 2020-07-06 21:53:12 -04:00
CMakeLists.txt Refactor common QA components to create a single common library 2020-07-18 16:21:15 +01:00
Doxyfile_python
Doxyfile_xml
action_plugin.cpp
action_plugin.h Comment-only changes 2020-01-10 16:43:01 -08:00
array_creator.cpp Fix pad name increment to use last edited pad. 2020-05-03 08:59:51 +01:00
array_creator.h
array_pad_name_provider.cpp
array_pad_name_provider.h
board_commit.cpp Remove unused nets when updating PCB. 2020-07-13 22:41:56 +01:00
board_commit.h Renormalize line endings and enforce normalization for all contributors 2020-08-03 23:15:10 +01:00
board_connected_item.cpp BOARD_CONNECTED_ITEM: added NetName property 2020-07-29 23:14:34 +02:00
board_connected_item.h Make sure pasted items get their netclass updated along with their net. 2020-07-31 16:47:36 +01:00
board_design_settings.cpp Settings management: try to fix full filename issues when using non ASCII7 chars. 2020-08-02 21:31:03 +02:00
board_item_container.h Migrate PcbNew project settings to new framework 2020-07-02 22:08:54 -04:00
board_items_to_polygon_shape_transform.cpp Fix incorrect shape of trapezoidal pad shapes. They were not the same as stable branch. 2020-07-31 14:37:21 +02:00
build_BOM_from_board.cpp
class_board.cpp Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
class_board.h Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
class_board_item.cpp Migrated GetEffectiveShape(s) to SHAPE_COMPOUND 2020-07-29 23:14:03 +02:00
class_dimension.cpp Properties meta-data for pcbnew classes 2020-07-05 22:44:38 +02:00
class_dimension.h Removed const modifier for returned non-reference types 2020-07-05 22:44:38 +02:00
class_drawsegment.cpp Fix issues with DRAWSEGMENT undo. 2020-08-02 17:05:13 +01:00
class_drawsegment.h Migrated GetEffectiveShape(s) to SHAPE_COMPOUND 2020-07-29 23:14:03 +02:00
class_edge_mod.cpp Properties meta-data for pcbnew classes 2020-07-05 22:44:38 +02:00
class_edge_mod.h Removed const modifier for returned non-reference types 2020-07-05 22:44:38 +02:00
class_marker_pcb.cpp Give excluded DRC items their own layer. 2020-07-24 01:28:25 +01:00
class_marker_pcb.h MARKER_PCB: include DRC_ITEM 2020-07-05 22:44:38 +02:00
class_module.cpp Keep item ordering as much as possible 2020-07-25 12:56:19 -07:00
class_module.h Keep item ordering as much as possible 2020-07-25 12:56:19 -07:00
class_pad.cpp Flip chamfer corners. 2020-08-01 21:32:45 +01:00
class_pad.h pcbnew: forgot about GetEffectiveShape() declaration during rebase 2020-07-29 23:14:34 +02:00
class_pcb_target.cpp Properties meta-data for pcbnew classes 2020-07-05 22:44:38 +02:00
class_pcb_target.h Removed const modifier for returned non-reference types 2020-07-05 22:44:38 +02:00
class_pcb_text.cpp Fix issues flipping text. 2020-08-02 17:05:13 +01:00
class_pcb_text.h Removed const modifier for returned non-reference types 2020-07-05 22:44:38 +02:00
class_text_mod.cpp Properties meta-data for pcbnew classes 2020-07-05 22:44:38 +02:00
class_text_mod.h Removed const modifier for returned non-reference types 2020-07-05 22:44:38 +02:00
class_track.cpp Keep item ordering as much as possible 2020-07-25 12:56:19 -07:00
class_track.h Keep item ordering as much as possible 2020-07-25 12:56:19 -07:00
class_zone.cpp Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
class_zone.h Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
cleanup_item.cpp Separate Cleanup Via from Cleanup Track 2020-07-30 21:22:33 -07:00
cleanup_item.h More performant (and more correct) deletion of DRC markers. 2020-08-04 11:45:07 +01:00
collectors.cpp CHANGED: Copper zones can be on more than one layer 2020-06-28 08:52:37 -04:00
collectors.h OnPixelInUI is meant to be a scaling factor, not a vector. 2020-08-01 00:24:26 +01:00
convert_drawsegment_list_to_polygon.cpp Finish implementation of DRAWSEGMENT::C_RECT. 2020-06-15 20:51:31 +01:00
cross-probing.cpp Allow Update Schematic from PCB to re-link based on refdes. 2020-07-16 18:32:49 +01:00
eagle_plugin.cpp Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
eagle_plugin.h eagle: Change font size calculation 2020-06-09 15:30:04 +00:00
edit.cpp More visibility settings infrastructure 2020-07-11 21:59:07 -04:00
edit_track_width.cpp Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
files.cpp Add support for the windows application restart api 2020-07-28 14:32:39 -04:00
footprint_edit_frame.cpp Make preference groups not selectable 2020-07-20 13:45:46 +00:00
footprint_edit_frame.h Update text variables even when they're changed from other binary. 2020-07-17 21:05:11 +01:00
footprint_editor_settings.cpp Migrate PcbNew project settings to new framework 2020-07-02 22:08:54 -04:00
footprint_editor_utils.cpp More visibility settings infrastructure 2020-07-11 21:59:07 -04:00
footprint_info_impl.cpp Simplify fp-info-cache escaping mechanism. 2020-08-04 23:54:12 +01:00
footprint_info_impl.h
footprint_libraries_utils.cpp Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
footprint_preview_panel.cpp FOOTPRINT_PREVIEW_PANEL: Ensure we are never using the high contrast mode 2020-07-26 13:22:21 +02:00
footprint_preview_panel.h Preview for PCBNew colour settings editor. 2020-08-06 19:38:06 +01:00
footprint_tree_pane.cpp Pinning for library trees in FPEditor and SymbolEditor. 2020-02-14 00:10:40 +00:00
footprint_tree_pane.h Pinning for library trees in FPEditor and SymbolEditor. 2020-02-14 00:10:40 +00:00
footprint_viewer_frame.cpp Update text variables even when they're changed from other binary. 2020-07-17 21:05:11 +01:00
footprint_viewer_frame.h Update text variables even when they're changed from other binary. 2020-07-17 21:05:11 +01:00
footprint_wizard.cpp
footprint_wizard.h Comment-only changes 2020-01-10 16:43:01 -08:00
footprint_wizard_frame.cpp Only init display options after creating a canvas 2020-07-16 22:27:03 -04:00
footprint_wizard_frame.h Consolidate common viewer actions across cvpcb and pcbnew frames 2020-05-24 11:58:33 +01:00
footprint_wizard_frame_functions.cpp Change more enums over to scoped enums 2019-12-28 00:55:11 +00:00
fp_tree_model_adapter.cpp Migrate PcbNew project settings to new framework 2020-07-02 22:08:54 -04:00
fp_tree_model_adapter.h Save pinned libraries in project. 2020-02-14 14:22:54 +00:00
fp_tree_synchronizing_adapter.cpp Clean up some commenting and rename MODULE_EDITOR_TOOLs to match filename. 2020-05-03 20:56:32 +01:00
fp_tree_synchronizing_adapter.h
generate_footprint_info.cpp
generate_footprint_info.h
gpcb_plugin.cpp Cleanup some compiler warnings 2020-07-03 00:10:31 +01:00
gpcb_plugin.h Comment-only changes 2020-01-10 16:43:01 -08:00
graphics_cleaner.cpp Check final corner of rectangle before merging. 2020-06-30 21:01:51 +01:00
graphics_cleaner.h Fix undo issue with merging lines into rectangles. 2020-06-29 22:58:05 +01:00
grid_layer_box_helpers.cpp ADDED: Enable color themes for PcbNew printing 2020-05-16 13:19:43 -04:00
grid_layer_box_helpers.h
initpcb.cpp Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
invoke_pcb_dialog.h Implement a new settings framework across all of KiCad 2020-02-19 23:44:56 -05:00
io_mgr.cpp Use Record handling for parsing 2020-04-03 23:22:24 +00:00
io_mgr.h Use Record handling for parsing 2020-04-03 23:22:24 +00:00
kicad_clipboard.cpp Convert parent-less module items to board items on paste. 2020-07-27 19:53:42 +01:00
kicad_clipboard.h Convert parent-less module items to board items on paste. 2020-07-27 19:53:42 +01:00
kicad_plugin.cpp Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
kicad_plugin.h Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
layer_widget.cpp Moved PANEL_COLOR_SETTINGS from buttons to swatches. 2020-05-06 19:02:21 +01:00
layer_widget.h Performance improvements for Gerber loading. 2020-05-02 21:10:40 +01:00
legacy_plugin.cpp Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
legacy_plugin.h Comment-only changes 2020-01-10 16:43:01 -08:00
load_select_footprint.cpp Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
menubar_footprint_editor.cpp Revert "Revert "Set DoubleBuffering to reduce flicker"" 2020-07-13 20:19:10 -07:00
menubar_pcb_editor.cpp Revert "Revert "Set DoubleBuffering to reduce flicker"" 2020-07-13 20:19:10 -07:00
netinfo.h Remove unused nets when updating PCB. 2020-07-13 22:41:56 +01:00
netinfo_item.cpp Migrate PcbNew project settings to new framework 2020-07-02 22:08:54 -04:00
netinfo_list.cpp Remove unused nets when updating PCB. 2020-07-13 22:41:56 +01:00
pad_custom_shape_functions.cpp class D_PAD: add Copy ctor and operator =. 2020-07-24 18:02:56 +02:00
pad_naming.cpp
pad_naming.h
pcb_base_edit_frame.cpp Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
pcb_base_edit_frame.h Make undo/redo lists protected. 2020-07-13 15:53:36 +01:00
pcb_base_frame.cpp Update text variables even when they're changed from other binary. 2020-07-17 21:05:11 +01:00
pcb_display_options.cpp More visibility settings infrastructure 2020-07-11 21:59:07 -04:00
pcb_draw_panel_gal.cpp Give excluded DRC items their own layer. 2020-07-24 01:28:25 +01:00
pcb_draw_panel_gal.h Add hittesting for worksheets in Pcbnew and Eeschema. 2020-05-03 00:07:38 +01:00
pcb_edit_frame.cpp Better handling of undefined values in Rule expressions. 2020-07-23 16:41:58 +01:00
pcb_edit_frame.h Update text variables even when they're changed from other binary. 2020-07-17 21:05:11 +01:00
pcb_expr_evaluator.cpp Be more flexible with user input; more multibyte safety. 2020-08-06 19:38:06 +01:00
pcb_expr_evaluator.h Be more flexible with user input; more multibyte safety. 2020-08-06 19:38:06 +01:00
pcb_layer_box_selector.cpp ADDED: Enable color themes for PcbNew printing 2020-05-16 13:19:43 -04:00
pcb_layer_box_selector.h Make indeterminate control states clearer for the user. 2020-05-05 20:26:51 +01:00
pcb_layer_widget.cpp Give excluded DRC items their own layer. 2020-07-24 01:28:25 +01:00
pcb_layer_widget.h Only update colors on layer widget when closing preferences 2020-05-26 21:17:39 -04:00
pcb_painter.cpp Don't allow 45deg rotation to bloat pad numbers/netnames. 2020-08-04 17:54:05 +01:00
pcb_painter.h FOOTPRINT_PREVIEW_PANEL: Ensure we are never using the high contrast mode 2020-07-26 13:22:21 +02:00
pcb_parser.cpp Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
pcb_parser.h Reset KIIDs when appending a board. 2020-08-05 19:02:19 +01:00
pcb_plot_params.cpp Remove PCBNEW_SETTINGS dependence from PCB_PLOT_PARAMS 2020-06-06 13:57:28 -04:00
pcb_plot_params.h Implement changes for Sketch Pads to Fab Layers. 2020-05-01 18:49:42 +01:00
pcb_plot_params_parser.h Comment-only changes 2020-01-10 16:43:01 -08:00
pcb_screen.cpp Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
pcb_view.cpp Fix bug where preview wasn't getting re-added after view cleared. 2020-08-04 20:40:40 +01:00
pcb_view.h Implement Get/Set display options 2019-11-07 08:26:44 -08:00
pcbnew.cpp Update text variables even when they're changed from other binary. 2020-07-17 21:05:11 +01:00
pcbnew.h NetClass settings for Eeschema. 2020-07-08 21:23:25 +01:00
pcbnew.icns
pcbnew.rc
pcbnew_config.cpp Make preference groups not selectable 2020-07-20 13:45:46 +00:00
pcbnew_config.h
pcbnew_doc.icns
pcbnew_id.h Remove the schematic and board backup file system 2020-07-02 22:08:54 -04:00
pcbnew_printout.cpp Don't mandate ownership semantics in API 2020-07-26 02:45:27 +00:00
pcbnew_printout.h Don't mandate ownership semantics in API 2020-07-26 02:45:27 +00:00
pcbnew_settings.cpp Separate Cleanup Via from Cleanup Track 2020-07-30 21:22:33 -07:00
pcbnew_settings.h Separate Cleanup Via from Cleanup Track 2020-07-30 21:22:33 -07:00
pcbplot.cpp Add rectangle tool to PCBNew toolbar in favour of Aux Origin. 2020-07-01 13:31:30 +01:00
pcbplot.h Implement changes for Sketch Pads to Fab Layers. 2020-05-01 18:49:42 +01:00
plot_board_layers.cpp Move rest of DRC to SHAPE collision architecture. 2020-07-06 20:00:50 +01:00
plot_brditems_plotter.cpp Performance enhancements. 2020-07-25 13:03:33 +01:00
plotcontroller.h Change more enums over to scoped enums 2019-12-28 00:55:11 +00:00
plugin.cpp
sel_layer.cpp ADDED: Enable color themes for PcbNew printing 2020-05-16 13:19:43 -04:00
text_mod_grid_table.cpp Generalize default footprint fields. 2020-05-08 23:30:33 +01:00
text_mod_grid_table.h Switch to scoped enums 2019-12-20 14:11:39 +00:00
toolbars_footprint_editor.cpp Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
toolbars_footprint_viewer.cpp Revert "Revert "Set DoubleBuffering to reduce flicker"" 2020-07-13 20:19:10 -07:00
toolbars_pcb_editor.cpp Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
tracks_cleaner.cpp Only clean up tracks completely inside pads. 2020-08-06 21:53:28 +01:00
tracks_cleaner.h Try harder to merge colinear tracks 2020-07-30 23:04:38 -07:00
undo_redo.cpp Remove unused nets when updating PCB. 2020-07-13 22:41:56 +01:00
zone_filler.cpp Fix auto-added include. 2020-08-07 17:10:12 +01:00
zone_filler.h CHANGED: Copper zones can be on more than one layer 2020-06-28 08:52:37 -04:00
zone_settings.cpp Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
zone_settings.h Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00
zones.h Implement a new settings framework across all of KiCad 2020-02-19 23:44:56 -05:00
zones_by_polygon.cpp Implement a more aggressive zone-fill-cancel. 2020-08-05 16:51:58 +01:00
zones_functions_for_undo_redo.cpp Undo for schematic-wide operations. 2020-07-13 12:32:17 +01:00
zones_functions_for_undo_redo.h
zones_test_and_combine_areas.cpp Implement pad & via aprons for hatched zones. 2020-08-07 15:15:43 +01:00