Assorted 2.5 fixes:
authorJoshua Leung <aligorith@gmail.com>
Wed, 22 Apr 2009 10:07:12 +0000 (10:07 +0000)
committerJoshua Leung <aligorith@gmail.com>
Wed, 22 Apr 2009 10:07:12 +0000 (10:07 +0000)
- compiling errors in outliner.c
- incorrect comments

source/blender/blenkernel/intern/fcurve.c
source/blender/editors/space_outliner/outliner.c
source/blender/python/intern/bpy_interface.c

index b4cec927e30bc268ef14b52df84bcdfec8c3f97b..5bfff141714a9501621e42109a20f3970c4659be 100644 (file)
@@ -1258,8 +1258,11 @@ static FModifierTypeInfo FMI_MODNAME = {
 
 /* Utilities For F-Curve Modifiers ---------------------- */
 
-/* Recalculate the F-Curve at evaltime, as modified by the given F-Curve */
-// TODO: this isn't really such an elegant solution for time-modifying F-Modifiers, but it gets too difficult otherwise for now...
+/* Recalculate the F-Curve at evaltime, as modified by the given F-Curve 
+ * 
+ * While this may sound wrong (and be potentially very slow), it is invalid for F-Curve modifiers to actually
+ * modify the evaltime in such a way that those after it will end up evaluating in the wrong time space.
+ */
 static float fcm_reevaluate_fcurve (FCurve *fcu, FModifier *fcm, float cvalue, float evaltime)
 { 
        ListBase modifiers = {NULL, NULL};
index 6394e38c6e7b5d6d657288a12378b531c2fd9928..57e81a233f74abb8bcbadeb519325ecd0848e68c 100644 (file)
 #include "RNA_access.h"
 
 #include "ED_armature.h"
+#include "ED_keyframing.h"
 #include "ED_object.h"
 #include "ED_screen.h"
 
@@ -3270,7 +3271,6 @@ static void do_outliner_drivers_editop(SpaceOops *soops, ListBase *tree, short m
 static int outliner_drivers_addsel_exec(bContext *C, wmOperator *op)
 {
        SpaceOops *soutliner= (SpaceOops*)CTX_wm_space_data(C);
-       Scene *scene= CTX_data_scene(C);
        
        /* check for invalid states */
        if (soutliner == NULL)
@@ -3306,7 +3306,6 @@ void OUTLINER_OT_drivers_add(wmOperatorType *ot)
 static int outliner_drivers_deletesel_exec(bContext *C, wmOperator *op)
 {
        SpaceOops *soutliner= (SpaceOops*)CTX_wm_space_data(C);
-       Scene *scene= CTX_data_scene(C);
        
        /* check for invalid states */
        if (soutliner == NULL)
index 86406134253c2f8d13c915eda9147ce85045351b..c2773e9e7d196ae9e474248d8cd5ba46516a8d1a 100644 (file)
@@ -560,7 +560,7 @@ float BPY_pydriver_eval (ChannelDriver *driver)
                }
        }
        
-       /* add target values to a py dictionary that we add to the drivers dict as 'd' */
+       /* add target values to a dict that will be used as '__locals__' dict */
        driver_vars = PyDict_New(); // XXX do we need to decref this?
        for (dtar= driver->targets.first; dtar; dtar= dtar->next) {
                PyObject *driver_arg = NULL;
@@ -569,11 +569,10 @@ float BPY_pydriver_eval (ChannelDriver *driver)
                /* try to get variable value */
                tval= driver_get_target_value(driver, dtar);
                driver_arg= PyFloat_FromDouble((double)tval);
-               if (driver_arg == NULL) continue;
                
                /* try to add to dictionary */
                if (PyDict_SetItemString(driver_vars, dtar->name, driver_arg)) {
-                       /* this target failed */
+                       /* this target failed - bad name */
                        if (targets_ok) {
                                /* first one - print some extra info for easier identification */
                                fprintf(stderr, "\nBPY_pydriver_eval() - Error while evaluating PyDriver:\n");