diff --git a/app/node/block/clip/clip.cpp b/app/node/block/clip/clip.cpp index dda9aadb4..f9f4efb38 100644 --- a/app/node/block/clip/clip.cpp +++ b/app/node/block/clip/clip.cpp @@ -64,11 +64,13 @@ void ClipBlock::InvalidateCache(const rational &start_range, const rational &end rational start = MediaToSequenceTime(start_range); rational end = MediaToSequenceTime(end_range); - // Limit cache invalidation to clip lengths - start = qMax(start, in()); - end = qMin(end, out()); + if (!(end < in() || start > out())) { + // Limit cache invalidation to clip lengths + start = qMax(start, in()); + end = qMin(end, out()); - Node::InvalidateCache(start, end, from); + Node::InvalidateCache(start, end, from); + } } else { // Otherwise, pass signal along normally Node::InvalidateCache(start_range, end_range, from);