diff --git a/src/slic3r/GUI/Selection.cpp b/src/slic3r/GUI/Selection.cpp index fadc5a3f2f..b2caaed55d 100644 --- a/src/slic3r/GUI/Selection.cpp +++ b/src/slic3r/GUI/Selection.cpp @@ -535,6 +535,9 @@ void Selection::drop() for (unsigned int i : m_list) { GLVolume& volume = *(*m_volumes)[i]; + // Skip the wipe tower: its synthetic id (>= 1000) is not an index into m_model->objects. + if (volume.object_idx() >= 1000) + continue; ModelObject* model_object = m_model->objects[volume.object_idx()]; if (model_object != nullptr) { @@ -1848,6 +1851,9 @@ void Selection::notify_instance_update(int object_idx, int instance_idx) for (unsigned int i : m_list) { int obj_index = (*m_volumes)[i]->object_idx(); + // Skip the wipe tower: its synthetic id (>= 1000) is not an index into m_model->objects. + if (obj_index >= 1000) + continue; //-1 means all the instance in this object if (instance_idx == -1) {