From ffab288f4e91461e97dbb1b28d6ec4b03daaa757 Mon Sep 17 00:00:00 2001 From: Roy-043 <70520633+Roy-043@users.noreply.github.com> Date: Sat, 28 Feb 2026 19:30:39 +0100 Subject: [PATCH] Draft: fix clone diffuse color regression Fixes #27958. Delay formatting of clone object to ensure shape availability. --- src/Mod/Draft/draftmake/make_clone.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Mod/Draft/draftmake/make_clone.py b/src/Mod/Draft/draftmake/make_clone.py index 3b8f4ffb4f..b4b7e4b547 100644 --- a/src/Mod/Draft/draftmake/make_clone.py +++ b/src/Mod/Draft/draftmake/make_clone.py @@ -36,6 +36,7 @@ from draftutils import utils from draftutils import gui_utils if App.GuiUp: + from PySide import QtCore from draftviewproviders.view_clone import ViewProviderClone @@ -131,7 +132,10 @@ def make_clone(obj, delta=None, forcedraft=False): cl.LongName = obj[0].LongName if App.GuiUp: ViewProviderClone(cl.ViewObject) - gui_utils.format_object(cl, obj[0]) + # Shape of clone may not yet be available (v1.1 regression). We need to delay + # `format_object()` as that function requires the correct number of faces. + # https://github.com/FreeCAD/FreeCAD/issues/27958 + QtCore.QTimer.singleShot(0, lambda: gui_utils.format_object(cl, obj[0])) gui_utils.select(cl) return cl