diff options
Diffstat (limited to 'source/blender/modifiers/intern/MOD_boolean.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_boolean.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/source/blender/modifiers/intern/MOD_boolean.c b/source/blender/modifiers/intern/MOD_boolean.c index 7700c8bbff9..5d28aea54b5 100644 --- a/source/blender/modifiers/intern/MOD_boolean.c +++ b/source/blender/modifiers/intern/MOD_boolean.c @@ -189,7 +189,7 @@ static int bm_face_isect_pair(BMFace *f, void *UNUSED(user_data)) return BM_elem_flag_test(f, BM_FACE_TAG) ? 1 : 0; } -static bool BMD_error_messages(ModifierData *md, Collection *col) +static bool BMD_error_messages(const Object *ob, ModifierData *md, Collection *col) { BooleanModifierData *bmd = (BooleanModifierData *)md; @@ -202,21 +202,21 @@ static bool BMD_error_messages(ModifierData *md, Collection *col) #ifndef WITH_GMP /* If compiled without GMP, return a error. */ if (use_exact) { - BKE_modifier_set_error(md, "Compiled without GMP, using fast solver"); + BKE_modifier_set_error(ob, md, "Compiled without GMP, using fast solver"); error_returns_result = false; } #endif /* If intersect is selected using fast solver, return a error. */ if (operand_collection && operation_intersect && !use_exact) { - BKE_modifier_set_error(md, "Cannot execute, intersect only available using exact solver"); + BKE_modifier_set_error(ob, md, "Cannot execute, intersect only available using exact solver"); error_returns_result = true; } /* If the selected collection is empty and using fast solver, return a error. */ if (operand_collection) { if (!use_exact && BKE_collection_is_empty(col)) { - BKE_modifier_set_error(md, "Cannot execute, fast solver and empty collection"); + BKE_modifier_set_error(ob, md, "Cannot execute, fast solver and empty collection"); error_returns_result = true; } @@ -225,7 +225,7 @@ static bool BMD_error_messages(ModifierData *md, Collection *col) FOREACH_COLLECTION_OBJECT_RECURSIVE_BEGIN (col, operand_ob) { if (operand_ob->type != OB_MESH) { BKE_modifier_set_error( - md, "Cannot execute, the selected collection contains non mesh objects"); + ob, md, "Cannot execute, the selected collection contains non mesh objects"); error_returns_result = true; } } @@ -587,7 +587,7 @@ static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh * return result; } - BMD_error_messages(md, NULL); + BMD_error_messages(ctx->object, md, NULL); Object *operand_ob = bmd->object; @@ -615,7 +615,7 @@ static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh * /* if new mesh returned, return it; otherwise there was * an error, so delete the modifier object */ if (result == NULL) { - BKE_modifier_set_error(md, "Cannot execute boolean operation"); + BKE_modifier_set_error(object, md, "Cannot execute boolean operation"); } } } @@ -626,7 +626,7 @@ static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh * } /* Return result for certain errors. */ - if (BMD_error_messages(md, col) == confirm_return) { + if (BMD_error_messages(ctx->object, md, col) == confirm_return) { return result; } @@ -669,7 +669,7 @@ static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh * /* if new mesh returned, return it; otherwise there was * an error, so delete the modifier object */ if (result == NULL) { - BKE_modifier_set_error(md, "Cannot execute boolean operation"); + BKE_modifier_set_error(object, md, "Cannot execute boolean operation"); } } } |