diff --git a/resources/icons/white/add_negative.svg b/resources/icons/white/add_negative.svg
new file mode 100644
index 0000000000..0173d1f0de
--- /dev/null
+++ b/resources/icons/white/add_negative.svg
@@ -0,0 +1,15 @@
+
+
+
diff --git a/resources/icons/white/add_part.svg b/resources/icons/white/add_part.svg
index b7c800bbb2..f4ee114320 100644
--- a/resources/icons/white/add_part.svg
+++ b/resources/icons/white/add_part.svg
@@ -2,19 +2,18 @@
diff --git a/src/libslic3r/Model.cpp b/src/libslic3r/Model.cpp
index e402baac56..e69929150c 100644
--- a/src/libslic3r/Model.cpp
+++ b/src/libslic3r/Model.cpp
@@ -725,7 +725,9 @@ void ModelObject::sort_volumes(bool full_sort)
// sort have to controll "place" of the support blockers/enforcers. But one of the model parts have to be on the first place.
else
std::stable_sort(volumes.begin(), volumes.end(), [](ModelVolume* vl, ModelVolume* vr) {
- return vl->type() > ModelVolumeType::PARAMETER_MODIFIER && vl->type() < vr->type();
+ ModelVolumeType vl_type = vl->type() > ModelVolumeType::PARAMETER_MODIFIER ? vl->type() : ModelVolumeType::PARAMETER_MODIFIER;
+ ModelVolumeType vr_type = vr->type() > ModelVolumeType::PARAMETER_MODIFIER ? vr->type() : ModelVolumeType::PARAMETER_MODIFIER;
+ return vl_type < vr_type;
});
}
diff --git a/src/slic3r/GUI/GUI_ObjectList.cpp b/src/slic3r/GUI/GUI_ObjectList.cpp
index cfb85ce31c..34804f2a53 100644
--- a/src/slic3r/GUI/GUI_ObjectList.cpp
+++ b/src/slic3r/GUI/GUI_ObjectList.cpp
@@ -3913,7 +3913,7 @@ void ObjectList::apply_volumes_order()
if (wxGetApp().app_config->get("order_volumes") != "1" || !m_objects)
return;
- for (int obj_idx = 0; m_objects->size(); obj_idx++)
+ for (int obj_idx = 0; obj_idx < m_objects->size(); obj_idx++)
reorder_volumes_and_get_selection(obj_idx);
}