summaryrefslogtreecommitdiff
path: root/lib/output_handlers.cpp
diff options
context:
space:
mode:
authorJosh Blum2012-09-29 14:45:29 -0700
committerJosh Blum2012-09-29 14:45:29 -0700
commitec1677346389ab3b434d81c6bde15321f3dbe209 (patch)
treea4fd8498e64dd90f2fc169a9de747e49e2173830 /lib/output_handlers.cpp
parentb194049a9fb5ab60f15bfcca1a53e39a42339244 (diff)
downloadsandhi-ec1677346389ab3b434d81c6bde15321f3dbe209.tar.gz
sandhi-ec1677346389ab3b434d81c6bde15321f3dbe209.tar.bz2
sandhi-ec1677346389ab3b434d81c6bde15321f3dbe209.zip
create IO subscriber bitset for tracking done
Diffstat (limited to 'lib/output_handlers.cpp')
-rw-r--r--lib/output_handlers.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/output_handlers.cpp b/lib/output_handlers.cpp
index bf63470..fa01b51 100644
--- a/lib/output_handlers.cpp
+++ b/lib/output_handlers.cpp
@@ -47,7 +47,8 @@ void BlockActor::handle_output_check(const OutputCheckMessage &message, const Th
const size_t index = message.index;
//a downstream block has declared itself done, recheck the token
- if (this->output_tokens[index].unique())
+ this->outputs_done.set(index, this->output_tokens[index].unique());
+ if ((~this->outputs_done).none()) //no downstream subscribers?
{
this->mark_done();
}