From 45850cec705627194606dbbffe60bf216a488245 Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Sun, 29 Aug 2021 21:33:54 +0200 Subject: [PATCH 1/2] Fixed #897 (crash in fill tool) --- src/lay/lay/layFillDialog.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lay/lay/layFillDialog.cc b/src/lay/lay/layFillDialog.cc index 4d59325ca..88be20f6f 100644 --- a/src/lay/lay/layFillDialog.cc +++ b/src/lay/lay/layFillDialog.cc @@ -310,7 +310,7 @@ FillDialog::get_fill_parameters () // visible layers for (lay::LayerPropertiesConstIterator l = mp_view->begin_layers (); ! l.at_end (); ++l) { - if (! l->has_children () && l->visible (true)) { + if (! l->has_children () && l->visible (true) && cv->layout ().is_valid_layer (l->layer_index ())) { fp.exclude_layers.push_back (cv->layout ().get_properties (l->layer_index ())); } } @@ -320,7 +320,7 @@ FillDialog::get_fill_parameters () // selected layers std::vector s = mp_view->selected_layers (); for (std::vector::const_iterator l = s.begin (); l != s.end (); ++l) { - if (! (*l)->has_children ()) { + if (! (*l)->has_children () && cv->layout ().is_valid_layer ((*l)->layer_index ())) { fp.exclude_layers.push_back (cv->layout ().get_properties ((*l)->layer_index ())); } } From 8e029698634d03987fa9d439a23090c217001a5a Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Sun, 29 Aug 2021 21:46:01 +0200 Subject: [PATCH 2/2] Fixed a warning because of duplicate undo registration of the fill tool --- src/lay/lay/layFillDialog.cc | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/lay/lay/layFillDialog.cc b/src/lay/lay/layFillDialog.cc index 88be20f6f..c3cb63568 100644 --- a/src/lay/lay/layFillDialog.cc +++ b/src/lay/lay/layFillDialog.cc @@ -198,8 +198,6 @@ FillDialog::generate_fill (const FillParameters &fp) tl::info << "Collecting fill regions"; } - mp_view->manager ()->transaction (tl::to_string (QObject::tr ("Fill"))); - db::Region fill_region; if (fp.fill_region_mode == FillParameters::Region) { fill_region = fp.fill_region;