summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/gras_impl/block_actor.hpp9
-rw-r--r--lib/gras_impl/input_buffer_queues.hpp5
2 files changed, 8 insertions, 6 deletions
diff --git a/lib/gras_impl/block_actor.hpp b/lib/gras_impl/block_actor.hpp
index 023011d..4fe6359 100644
--- a/lib/gras_impl/block_actor.hpp
+++ b/lib/gras_impl/block_actor.hpp
@@ -114,7 +114,14 @@ struct BlockActor : Apology::Worker
GRAS_FORCE_INLINE bool any_inputs_done(void)
{
if (this->inputs_done.none()) return false;
- return ((~this->input_queues.ready_bitset()) & this->inputs_done).any();
+ for (size_t i = 0; i < this->get_num_inputs(); i++)
+ {
+ if (this->inputs_done[i] and not this->input_queues.ready(i))
+ {
+ return true;
+ }
+ }
+ return false;
}
//per port properties
diff --git a/lib/gras_impl/input_buffer_queues.hpp b/lib/gras_impl/input_buffer_queues.hpp
index d9d864c..5b610d1 100644
--- a/lib/gras_impl/input_buffer_queues.hpp
+++ b/lib/gras_impl/input_buffer_queues.hpp
@@ -53,11 +53,6 @@ struct InputBufferQueues
void resize(const size_t size);
- GRAS_FORCE_INLINE const BitSet &ready_bitset(void) const
- {
- return _bitset;
- }
-
GRAS_FORCE_INLINE void push(const size_t i, const SBuffer &buffer)
{
ASSERT(not _queues[i].full());