From b207b82b663ff05db3872d80b6b9acc831334f31 Mon Sep 17 00:00:00 2001 From: Pixel Date: Sun, 8 Apr 2012 16:59:02 -0700 Subject: Making TaskEvents being able to be re-used for different tasks. --- src/Task.cc | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src') diff --git a/src/Task.cc b/src/Task.cc index 52e9fa2..f01bb18 100644 --- a/src/Task.cc +++ b/src/Task.cc @@ -192,6 +192,7 @@ Balau::Events::TaskEvent::TaskEvent(Task * taskWaited) : m_taskWaited(NULL), m_a void Balau::Events::TaskEvent::attachToTask(Task * taskWaited) { AAssert(!m_taskWaited, "You can't attach a TaskEvent twice."); + m_ack = false; m_taskWaited = taskWaited; ScopeLock lock(m_taskWaited->m_eventLock); m_taskWaited->m_waitedBy.push_back(this); @@ -242,6 +243,7 @@ void Balau::Events::TaskEvent::ack() { IAssert(deleted, "We didn't find task %p in the waitedBy lists... ?", this); m_ack = true; reset(); + m_taskWaited = NULL; } void Balau::Events::Timeout::gotOwner(Task * task) { -- cgit v1.2.3