diff options
author | Philipp Oeser <info@graphics-engineer.com> | 2019-08-19 14:49:42 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2019-08-19 15:30:54 +0300 |
commit | 5615c675afedf68261562d6d944b808a64ace8fe (patch) | |
tree | c3a51e780207b9a32db1a708ed241dc753f135d6 /source/blender/editors/curve | |
parent | ce5477d99392ce412dc0e669a5d9bf163a944d96 (diff) |
Fix T68779: "Match Texture Space" causes blender to crash
need to access curve_cache from evaluated object.
thx @sergey for pointing that out.
Reviewers: sergey
Maniphest Tasks: T68779
Differential Revision: https://developer.blender.org/D5526
Diffstat (limited to 'source/blender/editors/curve')
-rw-r--r-- | source/blender/editors/curve/editcurve.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/source/blender/editors/curve/editcurve.c b/source/blender/editors/curve/editcurve.c index c93531bb6cc..eebc8893112 100644 --- a/source/blender/editors/curve/editcurve.c +++ b/source/blender/editors/curve/editcurve.c @@ -51,6 +51,7 @@ #include "DEG_depsgraph.h" #include "DEG_depsgraph_build.h" +#include "DEG_depsgraph_query.h" #include "WM_api.h" #include "WM_types.h" @@ -7104,14 +7105,15 @@ static int match_texture_space_exec(bContext *C, wmOperator *UNUSED(op)) (void)depsgraph; Object *object = CTX_data_active_object(C); + Object *object_eval = DEG_get_evaluated_object(depsgraph, object); Curve *curve = (Curve *)object->data; float min[3], max[3], size[3], loc[3]; int a; - BLI_assert(object->runtime.curve_cache != NULL); + BLI_assert(object_eval->runtime.curve_cache != NULL); INIT_MINMAX(min, max); - BKE_displist_minmax(&object->runtime.curve_cache->disp, min, max); + BKE_displist_minmax(&object_eval->runtime.curve_cache->disp, min, max); mid_v3_v3v3(loc, min, max); @@ -7138,6 +7140,7 @@ static int match_texture_space_exec(bContext *C, wmOperator *UNUSED(op)) curve->texflag &= ~CU_AUTOSPACE; WM_event_add_notifier(C, NC_GEOM | ND_DATA, curve); + DEG_id_tag_update(&curve->id, ID_RECALC_GEOMETRY); return OPERATOR_FINISHED; } |