diff --git a/Geometry_shared.cpp b/Geometry_shared.cpp
index 70bf23e691deed5242a2ec1202b4c8001b3e7429..f353c5480bcb3c200ed1673d3597e6fe843cdf13 100644
--- a/Geometry_shared.cpp
+++ b/Geometry_shared.cpp
@@ -1833,8 +1833,9 @@ std::vector<UndoPoint> Geometry::MirrorProjectSelectedFacets(Vector3d P0, Vector
 	}
 
 	if (nbSelFacet == 0) return undoPoints;
-	if (!project) SwapNormal();
 	InitializeGeometry();
+	if (!project) SwapNormal();
+	
 	//update textures
 	/*try {
 		for (int i = 0; i < wp.nbFacet; i++) if (facets[i]->selected) SetFacetTexture(i, facets[i]->tRatio, facets[i]->hasMesh);