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:
authorCampbell Barton <ideasman42@gmail.com>2012-08-13 21:25:03 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-08-13 21:25:03 +0400
commitbe513d1b15630b629d09a6fdfa6ada808586a9dc (patch)
tree04e41990bcdb34d645ed14c073e4e31aa5670937 /source/blender/makesdna
parent7a3b44cf69b009fc77ffc361f5500e20131faa59 (diff)
fix for missing NULL checks when sequence-strip pointers become NULL because of problems with library linking.
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r--source/blender/makesdna/DNA_sequence_types.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/source/blender/makesdna/DNA_sequence_types.h b/source/blender/makesdna/DNA_sequence_types.h
index 9731854d68c..16e8b8904fa 100644
--- a/source/blender/makesdna/DNA_sequence_types.h
+++ b/source/blender/makesdna/DNA_sequence_types.h
@@ -102,8 +102,10 @@ typedef struct Strip {
} Strip;
/* The sequence structure is the basic struct used by any strip. each of the strips uses a different sequence structure.*/
-/* WATCH IT: first part identical to ID (for use in ipo's) */
+/* WATCH IT: first part identical to ID (for use in ipo's)
+ * the commend above is historic, probably we can drop the ID compatibility, but take care making this change */
+/* WATCH ITv2, this is really a 'Strip' in the UI!, name is highly confusing */
typedef struct Sequence {
struct Sequence *next, *prev;
void *tmp; /* tmp var for copying, and tagging for linked selection */
@@ -127,12 +129,14 @@ typedef struct Sequence {
Strip *strip;
struct Ipo *ipo DNA_DEPRECATED; /* old animation system, deprecated for 2.5 */
- struct Scene *scene;
- struct Object *scene_camera; /* override scene camera */
+
+ /* these ID vars should never be NULL but can be when linked libs fail to load, so check on access */
+ struct Scene *scene;
+ struct Object *scene_camera; /* override scene camera */
+ struct MovieClip *clip; /* for MOVIECLIP strips */
+ struct Mask *mask; /* for MASK strips */
struct anim *anim; /* for MOVIE strips */
- struct MovieClip *clip; /* for MOVIECLIP strips */
- struct Mask *mask; /* for MASK strips */
float effect_fader;
float speed_fader;