kicad/include
Seth Hillbrand 4959f91dac pcbnew: Ensure Connectivity RTree gets updated
When removing items, we perform a two-pass removal, checking first
for the cached rectangle collision.  Then, if we do not find the item
being removed, we perform a second, more expensive pass over the full
tree.  This second pass is required as we cannot be certain that an
item's bbox has not been modified between insertion and deletion.  In
which case, keeping stale pointers in the tree will lead to segfaults.

Fixes: lp:1777246
* https://bugs.launchpad.net/kicad/+bug/1777246
2018-06-16 21:45:55 -07:00
..
core Code formatting 2018-03-01 17:20:50 +01:00
gal Modified STROKE_FONT::ComputeStringBoundaryLimits() to process multiline strings 2018-03-08 10:56:34 +01:00
geometry pcbnew: Ensure Connectivity RTree gets updated 2018-06-16 21:45:55 -07:00
kicad_curl Spelling indentifier -> identifier 2018-03-08 12:33:32 -08:00
libeval Fix some Coverity uninitialized field warnings. 2018-06-04 13:48:57 -04:00
math box2: Remove wrong use of typename keyword 2017-11-05 23:03:52 +01:00
plugins Remove some extra semicolons 2017-11-09 19:52:18 +01:00
preview_items Allow drawing self-intersecting polygons, just display a warning 2018-03-02 10:58:43 +01:00
system Remove some extra semicolons 2017-11-09 19:52:18 +01:00
tool Fix off-by-1 errors in zoom menus & use zoom steps in GAL canvas. 2018-05-25 13:01:58 +01:00
ttl Remove some extra semicolons 2017-11-09 19:52:18 +01:00
view Common: Fix -Wcatch-value warnings (catching exceptions by value) 2018-06-05 11:46:17 +02:00
widgets Remove background fp loading from Choose Symbol dlg. 2018-06-09 00:51:39 +01:00
base_screen.h fix code after file renaming 2018-01-31 09:24:02 +01:00
base_struct.h Organize trace debugging code for ease of maintenance. 2018-04-13 09:59:01 -04:00
base_units.h very minor I18n fix 2017-11-15 20:28:44 +01:00
basic_gal.h DrawGraphicText: remove a static variable, and replace it (when needed) by a new parameter in argument list. 2018-04-07 19:57:26 +02:00
bezier_curves.h Changed negative recursion level argument to positive 2018-04-19 08:39:46 +02:00
bin_mod.h Minor coding style fixes in headers 2016-01-12 11:33:33 -05:00
bitmap_base.h fix misspelled 'an other' -> 'another' 2018-04-08 13:24:37 -04:00
bitmap_types.h Implement primitive icon scaling for high DPI 2018-01-10 21:26:06 -07:00
bitmaps.h Add missing icons in lock/unlock context submenu 2018-05-22 14:36:35 +02:00
block_commande.h fix code after file renaming 2018-01-31 09:24:02 +01:00
board_design_settings.h rename files 2018-02-02 21:57:12 +01:00
build_version.h More missing source license fixes. 2014-10-22 11:51:34 -04:00
class_board_item.h Replace messageBox with assert for non-fatal error. 2018-05-11 13:02:02 +01:00
class_draw_panel_gal.h Bug fixes in Length Tuning UI. 2018-05-20 23:48:29 +01:00
class_drawpanel.h Organize trace debugging code for ease of maintenance. 2018-04-13 09:59:01 -04:00
collector.h Removing the last of time_t and fixing downcast corner bug in collector 2018-03-27 16:52:06 -07:00
colors.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
colors_design_settings.h rename files 2018-01-31 09:24:00 +01:00
commit.h Don't set dirty bit when adding MARKERs. 2018-04-09 21:19:11 +01:00
common.h Fix user configuration path bug on Linux. 2018-05-07 18:23:41 -04:00
config_map.h Fix a few doxygen warnings 2017-06-20 10:47:30 +02:00
config_params.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
confirm.h Derive DIALOG_MULTI_OPTIONS from wxMultiChoiceDialog 2018-03-02 18:09:27 +01:00
convert_basic_shapes_to_polygon.h Better calculation of polygon clearance area of oval pads. Wip. 2018-01-20 19:34:50 +01:00
convert_to_biu.h Switch zone fillets to absolute-error algorithm. 2018-03-23 12:46:17 +00:00
dialog_env_var_config.h ENV_VAR config dialog enhancements. 2017-10-26 11:47:57 +02:00
dialog_helpers.h Remove confusing active library interactions with save. 2018-02-22 18:19:02 -05:00
dialog_hotkeys_editor.h Save hotkeys to combined app-based file 2018-05-18 12:57:38 -07:00
dialog_shim.h Fix several dialogs with bad default sizing 2018-01-06 14:39:17 -07:00
dlist.h Refinement to commit #4993. 2014-07-14 16:43:21 +02:00
draw_frame.h Save hotkeys to combined app-based file 2018-05-18 12:57:38 -07:00
draw_graphic_text.h DrawGraphicText: remove a static variable, and replace it (when needed) by a new parameter in argument list. 2018-04-07 19:57:26 +02:00
drc_item.h Fix some Coverity uninitialized field warnings. 2018-06-04 13:48:57 -04:00
dsnlexer.h fix misspelled 'an other' -> 'another' 2018-04-08 13:24:37 -04:00
eagle_parser.h Fix some Coverity uninitialized field warnings. 2018-06-04 13:48:57 -04:00
eda_base_frame.h Save hotkeys to combined app-based file 2018-05-18 12:57:38 -07:00
eda_dde.h Keep track of open sockets and dispose of them in d'tor. 2018-04-04 12:02:40 +01:00
eda_doc.h More forgiving keyword search. 2018-05-10 12:16:00 +01:00
eda_pattern_match.h Prevent implicit * from wildcard match in footprint 2018-05-01 16:49:20 -07:00
eda_rect.h Fix code after renaming files 2018-01-29 11:37:29 +01:00
eda_text.h Changed default text size to 50mils 2017-12-21 12:16:57 -05:00
enabler.h Prevent issuing a print command before the previous one is finished 2018-04-23 11:25:28 +02:00
enum_vector.h eeschema: Iterate through plugins when determining file format. 2017-10-20 08:38:38 +02:00
env_paths.h Footprint Wizard now also handles custom Env paths 2018-04-06 14:51:09 +01:00
executable_names.h Move executable name constants to own file 2017-03-23 09:23:45 -04:00
fctsys.h removed wx carbon include in fctsys as it is unnecessary 2015-12-12 23:03:35 +13:00
filter_reader.h Removed all exception specifiers since deprecated. 2017-06-12 13:54:55 -04:00
footprint_filter.h Update footprint filter type-in to be implicit * 2018-05-08 10:44:14 -07:00
footprint_info.h Async hardening 2018-06-04 15:08:40 -07:00
fp_lib_table.h Go back to checking individual file timestamps. 2018-02-23 10:56:12 -05:00
frame_type.h Removed all exception specifiers since deprecated. 2017-06-12 13:54:55 -04:00
gbr_metadata.h Gerber X1 plot files: prepare adding more structured comments (aperture and object attributes) 2018-05-17 17:32:35 +02:00
gbr_netlist_metadata.h Pcbnew: fix minor issue in %TO.C advanced attribute, and avoid creating an unused D10 tool in Gerber files. 2017-07-02 16:41:31 +02:00
gestfich.h Doxygen comment improvements. 2017-06-13 19:47:46 -04:00
gl_context_mgr.h Reverted 6912 with minor changes (LockCtx requires to specify canvas that locks a context). 2016-06-13 16:43:33 +02:00
gr_basic.h eeschema: neatly wrap placeholder text in symbol chooser 2018-01-07 19:30:56 -07:00
grid_tricks.h Don't make user click twice to toggle checkbox in wxGrid. 2018-03-23 12:46:17 +00:00
hash_eda.h Hash functions for BOARD_ITEMs 2017-10-24 23:10:40 +02:00
hashtables.h Pcbnew: major swig fix. 2016-07-18 13:23:09 -04:00
hotkeys_basic.h Save hotkeys to combined app-based file 2018-05-18 12:57:38 -07:00
html_messagebox.h Release mouse before closing HTML_MESSAGE_BOX. 2018-05-21 13:18:41 +01:00
i18n_utility.h Try to fix a compil issue on OSX (no viable conversion from 'const wxString' to 'const wxChar *', in colors.cpp) 2016-05-17 09:10:15 +02:00
id.h Eeschema: fix many wxASSERT when trying to open menus from the main menubar. 2018-04-01 20:58:27 +02:00
import_export.h Use _WIN32 instead of __MINGW32__ in 2 conditional compilations which are Windows specific, not especially mingw32 specific. 2016-03-01 16:55:44 +01:00
incremental_text_ctrl.h Fix a few doxygen warnings 2017-06-16 09:18:31 +02:00
intrusive_list.h Moved INTRUSIVE_LIST to a separate header 2017-06-23 18:51:00 +02:00
ki_exception.h Add KI_PARAM_ERROR, similar to std::invalid_argument but using wxString instead of std::string to throw errors. 2018-06-05 13:29:51 +02:00
ki_mutex.h More missing source license fixes. 2014-10-22 11:51:34 -04:00
kicad_device_context.h Minor coding style fixes in headers 2016-01-12 11:33:33 -05:00
kicad_string.h Move Fields Editor to wxGrid. 2018-04-17 11:39:44 +01:00
kiface_i.h Fix a few doxygen warnings 2017-06-20 10:47:30 +02:00
kiface_ids.h Make sure Cvpcb doesn't use its own FP_LIB_TABLE. 2018-05-01 21:49:03 +01:00
kiway.h eeschema: workaround for 64kByte string length limit in wxString::Format() causing segfaults in netlist update under Windows 2018-03-12 18:26:25 +01:00
kiway_express.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
kiway_mgr.h Minor coding style fixes in headers 2016-01-12 11:33:33 -05:00
kiway_player.h Remove not used ListNets() methods 2018-03-04 18:04:19 +01:00
layer_box_selector.h fix code after file renaming 2018-01-31 09:24:02 +01:00
layers_id_colors_and_visibility.h Restore some missing visibility items from board file 2018-03-02 11:12:53 +01:00
length.h.usuned Namespace KiGfx->KIGFX. 2013-10-14 16:13:35 +02:00
lib_id.h LIB_ID: fix incorrect detection of illegal chars, when values are not ASCII values. 2018-04-30 11:46:24 +02:00
lib_table_base.h Treat ${...} and $(...) envvar references uniformly. 2018-05-05 23:40:40 +01:00
lib_table_grid.h fix a minor compil warning 2018-05-06 12:49:35 +02:00
lockfile.h Doxygen comment improvements. 2017-06-13 19:47:46 -04:00
lru_cache.h 3D Viewer: complete refactor of the 3D viewer. 2016-07-19 13:35:25 -04:00
macros.h EDA_TEXT object refactor. 2017-01-25 08:03:32 -05:00
mail_type.h Dialog-ize CvPcb and implement proper Save. 2018-03-25 19:21:27 +01:00
make_unique.h Add C++14-style std::make_unique 'polyfill' for C++11 2017-01-23 11:41:00 +01:00
marker_base.h Rename a few files 2018-01-28 22:02:31 +01:00
md5_hash.h pcbnew: Optimized zone filling algorithm. 2017-12-05 14:54:57 +01:00
menus_helpers.h Make show/hide icons in menus a run time option, instead of compil option. 2017-03-02 15:45:54 +01:00
msgpanel.h Changed COLOR4D defines to static consts 2017-02-22 17:35:00 +01:00
multivector.h fix a segfault in library editor when importing symbols. 2017-10-12 10:38:48 +02:00
newstroke_font.h Fix incorrect (too small) bounding box EDA_TEXT, noticeable when chars like j or { are used in zone fill functions. 2016-03-11 13:08:34 +01:00
observable.h Fix a few doxygen warnings 2017-06-16 09:18:31 +02:00
origin_viewitem.h Implement undo/redo for origins in legacy 2018-01-27 19:51:44 -05:00
pad_shapes.h Add support for custom pad shape. Full support in DRC and PnS. 2017-09-19 09:02:53 +02:00
page_info.h Fix code after renaming files 2018-01-29 11:37:29 +01:00
painter.h Fix a minor issue in pad editor dialog: in GAL mode, the pad was sometimes shown in outline mode, sometimes in filled mode 2018-01-12 19:58:32 +01:00
pcb_base_frame.h 3D viewer: fix some issues when opened from a frame and changes are made in a other frame: 2018-05-10 12:49:20 +02:00
pcb_display_options.h refactoring: renamed pcbstruct.h to pcb_display_options.h, DISPLAY_OPTIONS->PCB_DISPLAY_OPTIONS 2017-11-03 20:02:06 +01:00
pcb_screen.h Fix code after renaming files 2018-01-29 11:37:29 +01:00
pcbstruct.h pcbnew legacy: remove option to hide via drill 2016-05-10 16:47:37 -04:00
pgm_base.h Icons options menu: code rework 2017-03-03 14:18:25 +01:00
plotter.h Fix code after renaming files 2018-01-29 11:37:29 +01:00
profile.h New connectivity algorithm. 2017-06-23 11:12:36 +02:00
project.h Save ModEdit's footprint ID rather than source. 2018-03-09 01:32:52 +00:00
properties.h Store information about buffering & caching in properties 2017-02-28 15:18:58 +01:00
ptree.h Removed all exception specifiers since deprecated. 2017-06-12 13:54:55 -04:00
reporter.h Optionally sort reporter messages 2018-05-22 13:55:02 -07:00
richio.h richio.h, class LINE_READER: prefix variable member names by "m_", like in other classes in Kicad. 2017-11-12 18:29:56 +01:00
scoped_set_reset.h Add context menu to GAL DRAWING_TOOL, including the zone menu 2017-01-11 10:41:08 +01:00
search_stack.h Fix unnecessary value parameter detected by clang-tidy. - Replace value parameter by const reference parameter or move-assignement in some cases 2018-01-09 18:55:51 -05:00
status_popup.h Bug fixes in Length Tuning UI. 2018-05-20 23:48:29 +01:00
streamwrapper.h Fix a few doxygen warnings and add a few comments. 2017-07-04 11:08:27 +02:00
sync_queue.h Fix SYNC_QUEUE build issue on Boost < 1.56 2017-03-24 10:09:08 -04:00
systemdirsappend.h Move SystemDirsAppend to own header 2017-03-23 09:23:45 -04:00
text_utils.h Added files missing in 602ecf75 2017-12-07 18:14:19 +01:00
title_block.h Fix code after renaming files 2018-01-29 11:37:29 +01:00
trace_helpers.h Replace printf debugging output in common/project.cpp with wxLogTrace. 2018-04-30 15:18:09 -04:00
trigo.h Minor fix in zones_by_polygon.cpp: When editing a non copper zone, some settings were not those of the edited zone. 2018-03-14 19:03:14 +01:00
undo_redo_container.h fix misspelled 'an other' -> 'another' 2018-04-08 13:24:37 -04:00
unit_format.h Moved FMT_UI & FMT_ANGLE macros to a separate header 2017-10-20 09:34:32 +02:00
utf8.h change UTF8& operator+=( wchar_t ch ) to UTF8& operator+=( unsigned ch ), because swig does not like wchar_t. 2017-12-08 17:57:53 +01:00
validators.h Envrionment variable dialog improvments. 2015-08-16 20:30:29 -04:00
wildcards_and_files_ext.h GTK+ file dialog wildcard improvements. 2017-11-11 19:32:26 -05:00
worksheet.h Fix code after renaming files 2018-01-29 11:37:29 +01:00
worksheet_dataitem.h Update code after file renaming 2018-01-29 09:39:49 +01:00
worksheet_shape_builder.h page layout editor: fix a crash on block move. 2018-03-10 10:25:07 +01:00
worksheet_viewitem.h Gerbview: GAL mode: shows the page worksheet, similar to legacy mode. 2018-06-01 09:11:43 +02:00
wxdataviewctrl_helpers.h Move wxDataViewCtrl manipulators out of dialog_choose_component.cpp 2017-03-30 21:47:14 -04:00
xnode.h Removed all exception specifiers since deprecated. 2017-06-12 13:54:55 -04:00