# 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)