diff --git a/src/Mod/CAM/Path/Op/Gui/Base.py b/src/Mod/CAM/Path/Op/Gui/Base.py index 2cda1f989e..b492e0a1d3 100644 --- a/src/Mod/CAM/Path/Op/Gui/Base.py +++ b/src/Mod/CAM/Path/Op/Gui/Base.py @@ -1366,7 +1366,10 @@ class TaskPanel(object): # Update properties based upon expressions in case expression value has changed for prp, expr in self.obj.ExpressionEngine: - val = FreeCAD.Units.Quantity(self.obj.evalExpression(expr)) + evalExpr = self.obj.evalExpression(expr) + if not isinstance(evalExpr, (int, float, FreeCAD.Units.Quantity)): + continue + val = FreeCAD.Units.Quantity(evalExpr) value = val.Value if hasattr(val, "Value") else val prop = getattr(self.obj, prp) if hasattr(prop, "Value"):