Merging r50237 through r50240 from trunk into soc-2011-tomato
[blender.git] / source / blender / blenkernel / intern / sequencer.c
index 60b0b65ad0f55a633226ef94555ee80dfa550576..84da45294a64a6db630926a86f91d7b29da74911 100644 (file)
@@ -208,8 +208,10 @@ void BKE_sequence_free(Scene *scene, Sequence *seq)
        /* free modifiers */
        BKE_sequence_modifier_clear(seq);
 
-       BKE_sequencer_cache_cleanup_sequence(seq);
-       BKE_sequencer_preprocessed_cache_cleanup_sequence(seq);
+       /* free cached data used by this strip,
+        * also invalidate cache for all dependent sequences
+        */
+       BKE_sequence_invalidate_cache(scene, seq);
 
        MEM_freeN(seq);
 }
@@ -2945,6 +2947,9 @@ static void free_anim_seq(Sequence *seq)
 /* check whether sequence cur depends on seq */
 int BKE_sequence_check_depend(Sequence *seq, Sequence *cur)
 {
+       if (cur->seq1 == seq || cur->seq2 == seq || cur->seq3 == seq)
+               return TRUE;
+
        /* sequences are not intersecting in time, assume no dependency exists between them */
        if (cur->enddisp < seq->startdisp || cur->startdisp > seq->enddisp)
                return FALSE;