diff --git a/libs/ui/flake/kis_shape_layer.cc b/libs/ui/flake/kis_shape_layer.cc
index dcd5d12..86d1580 100644
--- a/libs/ui/flake/kis_shape_layer.cc
+++ b/libs/ui/flake/kis_shape_layer.cc
@@ -496,6 +496,9 @@ bool KisShapeLayer::saveShapesToStore(KoStore *store, QList<KoShape *> shapes, c
ENTER_FUNCTION() << ppVar(shape) << ppVar(shape->shapeId()) << ppVar(shape->parent());
}
+
+ std::stable_sort(shapes.begin(), shapes.end(), KoShape::compareShapeZIndex);
+
SvgWriter writer(shapes);
writer.save(storeDev, sizeInPt);