diff --git a/app/node/block/block.cpp b/app/node/block/block.cpp index 69cda6126..a80c69bab 100644 --- a/app/node/block/block.cpp +++ b/app/node/block/block.cpp @@ -303,3 +303,13 @@ NodeInput *Block::speed_input() const return speed_input_; } +void Block::InvalidateCache(const rational &start_range, const rational &end_range, NodeInput *from) +{ + // We ignore length changes since they don't have an effect on our frames + if (from == length_input_) { + return; + } + + Node::InvalidateCache(start_range, end_range, from); +} + diff --git a/app/node/block/block.h b/app/node/block/block.h index cb9ea4e93..0bde06cf9 100644 --- a/app/node/block/block.h +++ b/app/node/block/block.h @@ -92,6 +92,8 @@ public: NodeInput* media_in_input() const; NodeInput* speed_input() const; + virtual void InvalidateCache(const rational& start_range, const rational& end_range, NodeInput* from = nullptr) override; + public slots: signals: