Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source/blender/blenkernel/intern/anim_sys.c2
-rw-r--r--source/blender/blenkernel/intern/depsgraph.c13
-rw-r--r--source/blender/editors/animation/drivers.c1
-rw-r--r--source/blender/editors/space_nla/nla_draw.c5
4 files changed, 14 insertions, 7 deletions
diff --git a/source/blender/blenkernel/intern/anim_sys.c b/source/blender/blenkernel/intern/anim_sys.c
index 3c6daf8b39d..b690c9b4a91 100644
--- a/source/blender/blenkernel/intern/anim_sys.c
+++ b/source/blender/blenkernel/intern/anim_sys.c
@@ -1168,7 +1168,7 @@ static short animsys_write_rna_setting (PointerRNA *ptr, char *path, int array_i
* for we know that which the updates in RNA were really just for
* flushing property editing via UI/Py
*/
- if (RNA_struct_is_a(new_ptr.type, &RNA_PoseBone)) {
+ if (new_ptr.type == &RNA_PoseBone) {
/* bone transforms - update pose (i.e. tag depsgraph) */
skip_updates_hack = 1;
}
diff --git a/source/blender/blenkernel/intern/depsgraph.c b/source/blender/blenkernel/intern/depsgraph.c
index 4802601307a..6f27a104144 100644
--- a/source/blender/blenkernel/intern/depsgraph.c
+++ b/source/blender/blenkernel/intern/depsgraph.c
@@ -2062,8 +2062,19 @@ static short animdata_use_time(AnimData *adt)
return 1;
}
- /* experimental check: if we have drivers, more likely than not, on a frame change
+ /* If we have drivers, more likely than not, on a frame change
* they'll need updating because their owner changed
+ *
+ * This is kindof a hack to get around a whole host of problems
+ * involving drivers using non-object datablock data (which the
+ * depsgraph currently has no way of representing let alone correctly
+ * dependency sort+tagging). By doing this, at least we ensure that
+ * some commonly attempted drivers (such as scene -> current frame;
+ * see "Driver updates fail" thread on Bf-committers dated July 2)
+ * will work correctly, and that other non-object datablocks will have
+ * their drivers update at least on frame change.
+ *
+ * -- Aligorith, July 4 2011
*/
if (adt->drivers.first)
return 1;
diff --git a/source/blender/editors/animation/drivers.c b/source/blender/editors/animation/drivers.c
index 28195be943c..6ebe488d2c8 100644
--- a/source/blender/editors/animation/drivers.c
+++ b/source/blender/editors/animation/drivers.c
@@ -383,7 +383,6 @@ short ANIM_paste_driver (ReportList *reports, ID *id, const char rna_path[], int
/* modifiers */
copy_fmodifiers(&fcu->modifiers, &channeldriver_copypaste_buf->modifiers);
- /* flags - on a per-relevant-flag basis */
/* extrapolation mode */
fcu->extend= channeldriver_copypaste_buf->extend;
diff --git a/source/blender/editors/space_nla/nla_draw.c b/source/blender/editors/space_nla/nla_draw.c
index 9ce5aafd48a..0583f328371 100644
--- a/source/blender/editors/space_nla/nla_draw.c
+++ b/source/blender/editors/space_nla/nla_draw.c
@@ -471,10 +471,7 @@ static void nla_draw_strip_text (AnimData *adt, NlaTrack *nlt, NlaStrip *strip,
sprintf(str, "%d) Temp-Meta", index);
}
else {
- if (strip->flag & NLASTRIP_FLAG_REVERSE)
- sprintf(str, "%s", strip->name);
- else
- sprintf(str, "%s", strip->name);
+ sprintf(str, strip->name);
}
/* set text color - if colors (see above) are light, draw black text, otherwise draw white */