diff --git a/libs/ui/flake/kis_shape_layer.cc b/libs/ui/flake/kis_shape_layer.cc index c2d6980..70a772c 100644 --- a/libs/ui/flake/kis_shape_layer.cc +++ b/libs/ui/flake/kis_shape_layer.cc @@ -490,7 +490,21 @@ bool KisShapeLayer::saveShapesToStore(KoStore *store, QList shapes, c KoStoreDevice storeDev(store); storeDev.open(QIODevice::WriteOnly); - std::sort(shapes.begin(), shapes.end(), KoShape::compareShapeZIndex); + ENTER_FUNCTION() << "=============================="; + + { + + std::vector vector = shapes.toVector().toStdVector(); + shapes.clear(); + + for (auto it = vector.begin(); it != vector.end(); ++it) { + ENTER_FUNCTION() << ppVar(*it) << ppVar((*it)->shapeId()) << ppVar((*it)->parent()); + } + + std::sort(vector.begin(), vector.end(), KoShape::compareShapeZIndex); + + shapes = QList::fromVector(QVector::fromStdVector(vector)); + } SvgWriter writer(shapes); writer.save(storeDev, sizeInPt);