From f5f1407a7eb643792dfe5dd27fe80da7249f6914 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 4 Jun 2019 12:10:42 +0200 Subject: [PATCH] Fix T65451: Changing driver expression doesn't update relations --- source/blender/editors/interface/interface_anim.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source/blender/editors/interface/interface_anim.c b/source/blender/editors/interface/interface_anim.c index 4a0a19f57cf..5ff200fa7e4 100644 --- a/source/blender/editors/interface/interface_anim.c +++ b/source/blender/editors/interface/interface_anim.c @@ -176,6 +176,8 @@ bool ui_but_anim_expression_set(uiBut *but, const char *str) driver = fcu->driver; if (driver && (driver->type == DRIVER_TYPE_PYTHON)) { + bContext *C = but->block->evil_C; + BLI_strncpy_utf8(driver->expression, str, sizeof(driver->expression)); /* tag driver as needing to be recompiled */ @@ -186,7 +188,9 @@ bool ui_but_anim_expression_set(uiBut *but, const char *str) fcu->flag &= ~FCURVE_DISABLED; /* this notifier should update the Graph Editor and trigger depsgraph refresh? */ - WM_event_add_notifier(but->block->evil_C, NC_ANIMATION | ND_KEYFRAME, NULL); + WM_event_add_notifier(C, NC_ANIMATION | ND_KEYFRAME, NULL); + + DEG_relations_tag_update(CTX_data_main(C)); return true; }