# HG changeset patch # User Santeri Piippo # Date 1520804523 -7200 # Node ID c6bc95cbf4a3f18216251c5ec7a309efbb29cd45 # Parent f9c01b455594de82f3023bba0fd069ee1ce29eb1 fixed removing objects causing some other objects to disappear diff -r f9c01b455594 -r c6bc95cbf4a3 src/glcompiler.cpp --- a/src/glcompiler.cpp Sun Mar 11 16:13:32 2018 +0200 +++ b/src/glcompiler.cpp Sun Mar 11 23:42:03 2018 +0200 @@ -500,12 +500,16 @@ m_staged.insert(m_renderer->model()->index(row)); } -void GLCompiler::handleRowRemoval(const QModelIndex&, int first, int last) +void GLCompiler::handleRowRemoval(const QModelIndex&, int, int) { - for (int row = first; row <= last; row += 1) + // It looks like removing rows causes some key invalidation. Until I can figure that out, + // we're going scorched earth. + m_objectInfo.clear(); + recompile(); + /* + for (int row = last; row >= first; row -= 1) forgetObject(m_renderer->model()->index(row)); - - needMerge(); + */ } void GLCompiler::handleDataChange(const QModelIndex& topLeft, const QModelIndex& bottomRight)