From d3a718dc2f556fd8a0dbf6e89e5317d7e85a44f2 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 6 Jan 2010 22:42:13 +0000 Subject: fix for own but in recent driver optimization [#20580] Driver Crasher rev [25763] recalculate names when needed --- source/blender/blenkernel/intern/fcurve.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'source/blender/blenkernel/intern/fcurve.c') diff --git a/source/blender/blenkernel/intern/fcurve.c b/source/blender/blenkernel/intern/fcurve.c index 67bee90e91c..e86cfce6fd9 100644 --- a/source/blender/blenkernel/intern/fcurve.c +++ b/source/blender/blenkernel/intern/fcurve.c @@ -1097,6 +1097,12 @@ void driver_free_variable (ChannelDriver *driver, DriverVar *dvar) BLI_freelinkN(&driver->variables, dvar); else MEM_freeN(dvar); + +#ifndef DISABLE_PYTHON + /* since driver variables are cached, the expression needs re-compiling too */ + if(driver->type==DRIVER_TYPE_PYTHON) + driver->flag |= DRIVER_FLAG_RENAMEVAR; +#endif } /* Change the type of driver variable */ @@ -1149,6 +1155,12 @@ DriverVar *driver_add_new_variable (ChannelDriver *driver) /* set the default type to 'single prop' */ driver_change_variable_type(dvar, DVAR_TYPE_SINGLE_PROP); +#ifndef DISABLE_PYTHON + /* since driver variables are cached, the expression needs re-compiling too */ + if(driver->type==DRIVER_TYPE_PYTHON) + driver->flag |= DRIVER_FLAG_RENAMEVAR; +#endif + /* return the target */ return dvar; } -- cgit v1.2.3