Fix re-entrant render() calls, add an assert to enforce

This commit is contained in:
Vojtech Kral 2018-11-27 16:55:54 +01:00
parent 0bdbd3ee63
commit f5080ea7f5
3 changed files with 12 additions and 3 deletions

View file

@ -1361,7 +1361,7 @@ void ObjectList::update_selections_on_canvas()
const int sel_cnt = GetSelectedItemsCount();
if (sel_cnt == 0) {
selection.clear();
wxGetApp().plater()->canvas3D()->render();
wxGetApp().plater()->canvas3D()->set_as_dirty();
return;
}
@ -1391,7 +1391,7 @@ void ObjectList::update_selections_on_canvas()
else
add_to_selection(item, selection, true);
wxGetApp().plater()->canvas3D()->render();
wxGetApp().plater()->canvas3D()->set_as_dirty();
return;
}
@ -1402,7 +1402,7 @@ void ObjectList::update_selections_on_canvas()
for (auto item: sels)
add_to_selection(item, selection, false);
wxGetApp().plater()->canvas3D()->render();
wxGetApp().plater()->canvas3D()->set_as_dirty();
}
void ObjectList::select_item(const wxDataViewItem& item)