From a143b64ac79bf250f1552494c7e8ede3ff5b558a Mon Sep 17 00:00:00 2001 From: itsmattkc Date: Mon, 30 Mar 2020 15:11:32 +1100 Subject: [PATCH] block: don't send cache invalidation signals from length changes Minor optimization. --- app/node/block/block.cpp | 10 ++++++++++ app/node/block/block.h | 2 ++ 2 files changed, 12 insertions(+) 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: