kicad/eeschema
Wayne Stambaugh 62297e63a2 Fix crash when saving pasted root sheet symbols.
The paste code creates invalid KIID_PATH objects with a zero length.  All
paths must include the root KIID at a minimum.  Code was added to prune
the invalid paths and some defensive code was adding to the formatter to
prevent the crash in case there are other paths where someone generates
a zero length path.

Pruning orphaned instance data does not work when loading schematics prior
to version 7 because the paths did not include the root sheet UUID.  Once
the file is saved to V7 or later, the next load will prune any orphaned or
invalid instance data for the current project.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16245

(cherry picked from commit 764df1d107)
2023-12-03 13:27:34 -05:00
..
dialogs Enforce symbol name not being empty 2023-11-05 15:10:44 +00:00
navlib Navlib: Ensure a pointer is initialized. 2023-05-10 09:36:51 +02:00
netlist_exporters Don't accidentally add NULL ptrs to the LibSymbols cache. 2023-06-11 22:31:18 +01:00
plugins bom_csv_grouped_by_value_with_fp.py: fix compatibility with python < 3.9 2023-05-04 08:54:55 +02:00
sch_plugins Fix crash when saving pasted root sheet symbols. 2023-12-03 13:27:34 -05:00
sim Fix invalid string compare in IBIS parser 2023-11-30 09:15:01 -08:00
symbol_editor Handle read-only libraries when saving symbol from canvas. 2023-09-30 13:36:13 +01:00
tools Fix crash when saving pasted root sheet symbols. 2023-12-03 13:27:34 -05:00
widgets Fix a bunch more issues with sheetpaths and allowExtraText. 2023-05-05 18:02:59 +01:00
CMakeLists.txt Update 5 files 2023-05-03 17:32:55 +00:00
annotate.cpp Ensure symbols in subsheets are added to multi-unit map before re-annotating 2023-08-04 01:22:26 +02:00
autoplace_fields.cpp Field bounding boxes no longer contain interline spacing. 2023-05-07 22:30:01 +01:00
bom_plugins.cpp More wxSing 2023-01-16 23:14:38 -05:00
bom_plugins.h
bus-wire-junction.cpp Extract SCH_LINE::BreakAt( aP ) from SCH_EDIT_FRAME::BreakSegment 2023-01-15 19:17:40 +01:00
bus_alias.h Coverity fixes. 2022-08-22 17:52:58 +01:00
cmp_library.keywords
connection_graph.cpp Allow multiple strong drivers with same name 2023-10-31 11:53:56 -07:00
connection_graph.h Fix memory leak in connection graph 2023-10-06 09:14:07 -07:00
cross-probing.cpp Fix potential stale pointer bug in schematic highlight connection code. 2023-05-29 13:55:07 -04:00
default_values.h Schematic Lines: add marker for unselected, connected line ends 2022-12-12 14:45:06 -05:00
ee_collectors.cpp Attempt to fix std::initializer_list lifetime issue. 2022-08-21 20:54:41 +01:00
ee_collectors.h Attempt to fix std::initializer_list lifetime issue. 2022-08-21 20:54:41 +01:00
eeschema.cpp Flip the RegisterSettings order to avoid legacy import crashes 2023-09-04 23:22:39 -04:00
eeschema.icns
eeschema_config.cpp Fix merge errors. 2023-09-02 11:18:34 +01:00
eeschema_doc.icns
eeschema_helpers.cpp Remove version guard from sim migration, and add migration to paste. 2022-12-08 23:57:42 +00:00
eeschema_helpers.h Add schematic cli plotting 2022-11-01 23:34:49 -04:00
eeschema_id.h Add pinned library support to Footprint and Symbol Viewers. 2022-07-09 17:41:10 -06:00
eeschema_jobs_handler.cpp Adds the missing plot formats to `kicad-cli sch export` 2023-06-11 13:56:24 -04:00
eeschema_jobs_handler.h Adds the missing plot formats to `kicad-cli sch export` 2023-06-11 13:56:24 -04:00
eeschema_settings.cpp Remove locks from settings 2023-05-03 17:25:17 +00:00
eeschema_settings.h Remember dialog sizes for dialogs that might have lots of fields. 2022-12-24 22:20:03 +00:00
erc.cpp Improve pin-pin iteration in ERC checks 2023-10-06 09:14:07 -07:00
erc.h ADDED: ERC for missing units 2022-11-29 23:49:55 +00:00
erc_item.cpp Copy RC_ITEM fix to ERC_ITEM (where it's actually needed). 2023-04-19 14:08:55 +01:00
erc_item.h Fix build warnings introduced by recent ERC changes. 2023-01-24 10:42:41 -05:00
erc_sch_pin_context.cpp Eeschema: ERC checks handle connections between a common sub-circuit 2023-01-24 14:11:01 +00:00
erc_sch_pin_context.h Eeschema: ERC checks handle connections between a common sub-circuit 2023-01-24 14:11:01 +00:00
erc_settings.cpp ERC: set default setting ERCE_SIMULATION_MODEL to ignore 2023-04-14 17:29:42 +02:00
erc_settings.h ADDED: ERC for missing units 2022-11-29 23:49:55 +00:00
fields_grid_table.cpp Handle flipped horiz/vert justifications in FIELDS_GRID_TABLE. 2023-09-30 13:27:28 +01:00
fields_grid_table.h Hook up AddField handler to GRID_TRICKS for SCH dialogs. 2023-03-02 18:16:02 +00:00
files-io.cpp Fix crash when saving pasted root sheet symbols. 2023-12-03 13:27:34 -05:00
general.h
generate_alias_info.cpp Fix a bunch more issues with sheetpaths and allowExtraText. 2023-05-05 18:02:59 +01:00
generate_alias_info.h
invoke_sch_dialog.h Rename files and classes to match dialog name. 2022-12-11 18:42:57 +00:00
lib_field.cpp Honour aAllowExtraText flag in LIB_FIELD::GetShownText(). 2023-08-21 19:20:00 +01:00
lib_field.h Handle flipped horiz/vert justifications in FIELDS_GRID_TABLE. 2023-09-30 13:27:28 +01:00
lib_item.cpp ADDED: Support for explicit DNP field 2022-09-16 22:26:16 +00:00
lib_item.h ADDED: Support for explicit DNP field 2022-09-16 22:26:16 +00:00
lib_pin.cpp Cache LIB_PIN text extents for performance. 2023-06-04 21:11:06 +01:00
lib_pin.h Cache LIB_PIN text extents for performance. 2023-06-04 21:11:06 +01:00
lib_shape.cpp Workaround wxWidgets enforced min pen width by using transparent pen. 2023-02-14 14:45:24 +00:00
lib_shape.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
lib_symbol.cpp Don't count pins of both De Morgan variants when matching to footprint pads. 2023-08-31 12:37:44 +01:00
lib_symbol.h Avoid the obsolete GetNextPin() call 2023-01-20 14:12:15 -08:00
lib_text.cpp Outline font performance improvements. 2023-06-04 20:57:14 +01:00
lib_text.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
lib_textbox.cpp Eeschema, plot schematic: fix incorrect rotation of symbol text in textboxes. 2023-11-05 16:31:38 +01:00
lib_textbox.h Fix a bunch more issues with sheetpaths and allowExtraText. 2023-05-05 18:02:59 +01:00
libarch.cpp More wxSing 2023-01-16 23:14:38 -05:00
menubar.cpp Disable non-KiCad import for project-mode 2023-09-29 11:05:49 -07:00
picksymbol.cpp Symbol chooser: save UI settings even when canceled 2023-02-14 18:27:31 -05:00
pin_numbers.cpp More wxSing 2023-01-16 23:14:38 -05:00
pin_numbers.h Fix broken comparison in pin_numbers 2022-04-19 14:46:05 -07:00
pin_type.cpp On-the-fly translations for pin electrical types. 2022-04-05 13:57:28 +01:00
pin_type.h
project_rescue.cpp Fix library symbol rescue issues. 2023-01-21 10:35:14 -05:00
project_rescue.h Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
project_sch_specific.cpp Code clarity. 2022-10-11 11:22:26 +01:00
sch_base_frame.cpp Move Spacemouse to advanced config 2023-04-25 11:30:36 -07:00
sch_base_frame.h Move Spacemouse to advanced config 2023-04-25 11:30:36 -07:00
sch_bitmap.cpp Set PPI properly in schematic bitmaps, too 2023-02-15 02:37:22 +00:00
sch_bitmap.h Set PPI properly in schematic bitmaps, too 2023-02-15 02:37:22 +00:00
sch_bus_entry.cpp More wxSing 2023-01-16 23:14:38 -05:00
sch_bus_entry.h Better handling of dangling markers during bus unfold. 2023-08-15 17:52:42 +01:00
sch_connection.cpp Escape net names coming from aliases 2023-11-05 15:10:17 +00:00
sch_connection.h Improve scoping control of connetion members. 2023-04-04 11:35:06 +01:00
sch_draw_panel.cpp
sch_draw_panel.h RIP EDA_RECT. 2022-08-31 23:57:24 +01:00
sch_edit_frame.cpp Properly handle incremental bus connections 2023-09-18 21:26:58 -07:00
sch_edit_frame.h Fix potential stale pointer bug in schematic highlight connection code. 2023-05-29 13:55:07 -04:00
sch_field.cpp Don't presume all cached glyphs are outline glyphs. 2023-08-31 12:37:44 +01:00
sch_field.h Remove extra nag/grid assertion 2023-09-13 12:31:46 -07:00
sch_file_versions.h Eeschema: ERC checks handle connections between a common sub-circuit 2023-01-24 14:11:01 +00:00
sch_io_mgr.cpp ADDED: Database libraries MVP 2022-08-26 10:51:13 -04:00
sch_io_mgr.h Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
sch_item.cpp Fix crash in incremental update and bus conn 2023-09-19 16:07:40 -07:00
sch_item.h Add ability to update subgraphs based on changeset 2023-04-25 11:32:04 -07:00
sch_junction.cpp More wxSing 2023-01-16 23:14:38 -05:00
sch_junction.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
sch_label.cpp Implement printing and plotting for directive-specific label shapes. 2023-09-30 13:26:59 +01:00
sch_label.h Eeschema: fix block mirroring of fields attached to labels (all types) 2023-05-28 19:38:27 +02:00
sch_line.cpp Improve scoping control of connetion members. 2023-04-04 11:35:06 +01:00
sch_line.h Schematic: added drag wires should copy stroke 2023-01-25 12:34:40 -05:00
sch_marker.cpp Eeschema: ERC checks handle connections between a common sub-circuit 2023-01-24 14:11:01 +00:00
sch_marker.h Eeschema: ERC checks handle connections between a common sub-circuit 2023-01-24 14:11:01 +00:00
sch_no_connect.cpp Strip out Mils2Iu 2022-09-16 21:09:27 -04:00
sch_no_connect.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
sch_painter.cpp Honour override-individual-item-colors setting for filled shapes. 2023-09-06 16:31:22 +01:00
sch_painter.h Re-add outline shadows to stroke fonts 2023-01-30 22:42:26 +00:00
sch_pin.cpp Fix a bunch more issues with sheetpaths and allowExtraText. 2023-05-05 18:02:59 +01:00
sch_pin.h Don't destroy the pin cache in symbols 2023-09-29 17:59:24 +00:00
sch_plotter.cpp Fix a bunch more issues with sheetpaths and allowExtraText. 2023-05-05 18:02:59 +01:00
sch_plotter.h Minor compil and Coverity warnings fixes. 2023-01-02 10:21:42 +01:00
sch_plugin.cpp Templatize MigrateSimModel() so it can be used on LIB_SYMBOLs as well. 2022-12-08 23:57:43 +00:00
sch_preview_panel.cpp Strip out Mils2Iu 2022-09-16 21:09:27 -04:00
sch_preview_panel.h Don't paint hidden fields without a schematic context 2022-08-20 17:56:53 -04:00
sch_reference_list.cpp Better handle many (MANY) duplicate refs 2023-08-28 17:08:42 -07:00
sch_reference_list.h Don't special case power symbol re-annotation 2023-01-23 13:19:01 -08:00
sch_rtree.h RIP EDA_RECT. 2022-08-31 23:57:24 +01:00
sch_screen.cpp Fix crash when saving pasted root sheet symbols. 2023-12-03 13:27:34 -05:00
sch_screen.h Fix crash when saving pasted root sheet symbols. 2023-12-03 13:27:34 -05:00
sch_shape.cpp Workaround wxWidgets enforced min pen width by using transparent pen. 2023-02-14 14:45:24 +00:00
sch_shape.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
sch_sheet.cpp Fix broken symbol reference designators on paste special. 2023-12-01 15:30:51 -05:00
sch_sheet.h Fix broken symbol reference designators on paste special. 2023-12-01 15:30:51 -05:00
sch_sheet_path.cpp Prevent some issues with recursion on repeat-last-item 2023-12-01 13:02:50 -05:00
sch_sheet_path.h Don't store address of temp object. 2023-08-27 19:02:57 +01:00
sch_sheet_pin.cpp Fix a bunch more issues with sheetpaths and allowExtraText. 2023-05-05 18:02:59 +01:00
sch_sheet_pin.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
sch_symbol.cpp Fix crash when saving pasted root sheet symbols. 2023-12-03 13:27:34 -05:00
sch_symbol.h Fix broken symbol reference designators on paste special. 2023-12-01 15:30:51 -05:00
sch_text.cpp Cleanup text alignment between version 6 and 7 2023-05-17 15:29:49 -07:00
sch_text.h Fix a bunch more issues with sheetpaths and allowExtraText. 2023-05-05 18:02:59 +01:00
sch_text_help.md
sch_text_help_md.h Add 2 automatically generated files to the source tree. 2022-06-22 08:51:04 +02:00
sch_textbox.cpp Fix a bunch more issues with sheetpaths and allowExtraText. 2023-05-05 18:02:59 +01:00
sch_textbox.h Fix a bunch more issues with sheetpaths and allowExtraText. 2023-05-05 18:02:59 +01:00
sch_validators.cpp Manual cherry-pick of 256c7fa7 2023-08-07 11:36:36 -04:00
sch_validators.h CHANGED netclass assignments now done via canvas or via patterns. 2022-08-14 22:56:29 +01:00
sch_view.cpp Double double-add items to the view. 2023-04-16 23:05:24 +01:00
sch_view.h Move notes foreground in front of device foreground and wires. 2023-01-15 22:57:01 +00:00
schematic.cpp Add missing autocomplete for FILENAME, PROJECTNAME 2023-02-03 00:10:55 +00:00
schematic.h Add missing autocomplete for FILENAME, PROJECTNAME 2023-02-03 00:10:55 +00:00
schematic.keywords Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
schematic_settings.cpp Refresh schematic's copy of template fieldnames after preferences. 2023-01-24 00:07:40 +00:00
schematic_settings.h Finish implementation of export_current_sheet_as_root. 2023-01-24 00:07:40 +00:00
schematic_undo_redo.cpp Don't store address of temp object. 2023-08-27 19:02:57 +01:00
sheet.cpp Ensure the bitmap exported to the clipboard is valid. 2023-07-25 11:14:36 -07:00
symbol_async_loader.cpp Handle non-IOE exceptions in symbol loader 2023-11-30 22:26:14 +00:00
symbol_async_loader.h
symbol_checker.cpp Readability improvements. 2022-09-19 11:18:20 +01:00
symbol_lib_table.cpp Stricter API for LIB_TABLE 2023-08-15 01:39:09 +00:00
symbol_lib_table.h DbLib: Load source symbol in editor when edit action is taken 2023-01-19 22:45:46 -05:00
symbol_library.cpp Fix issue converting legacy SPICE models. 2022-12-14 13:36:28 +00:00
symbol_library.h Fix a collision name with a windows header (msys2) 2022-12-09 09:36:58 +01:00
symbol_library_common.h ADDED: Export symbols from schematic to library 2022-09-23 21:23:01 -04:00
symbol_library_manager.cpp Exclude database libraries from the symbol library editor 2023-01-22 20:49:41 -05:00
symbol_library_manager.h Fix missing virtual dtor 2022-09-23 21:44:15 -04:00
symbol_tree_model_adapter.cpp Support showing Value field in symbol chooser 2023-01-19 22:14:10 -05:00
symbol_tree_model_adapter.h Add pin/unpin context menu to Symbol Chooser and Footprint Chooser. 2022-09-21 14:45:12 +01:00
symbol_tree_synchronizing_adapter.cpp Treat canvas item as current when tree view contains no selection. 2023-06-10 10:57:14 +01:00
symbol_tree_synchronizing_adapter.h Treat canvas item as current when tree view contains no selection. 2023-06-10 10:57:14 +01:00
symbol_viewer_frame.cpp Fix ambiguous cast 2023-10-13 19:26:16 -04:00
symbol_viewer_frame.h Tighten up the lifecycle management of VIEW_ITEMs in 2023-04-16 15:38:15 +01:00
toolbars_sch_editor.cpp Put simulation in with other life-cycle tools. 2022-12-28 10:40:23 +00:00
toolbars_symbol_viewer.cpp Never call ReCreateMenuBar inside a menu event handler 2022-12-16 16:37:51 -05:00