aboutsummaryrefslogtreecommitdiff
path: root/build/algorithm.ixx
diff options
context:
space:
mode:
Diffstat (limited to 'build/algorithm.ixx')
-rw-r--r--build/algorithm.ixx5
1 files changed, 4 insertions, 1 deletions
diff --git a/build/algorithm.ixx b/build/algorithm.ixx
index 4581d5b..7849713 100644
--- a/build/algorithm.ixx
+++ b/build/algorithm.ixx
@@ -108,7 +108,10 @@ namespace build
inline target_state
execute (action a, target& t)
{
- t.dependents--;
+ // This can happen when we re-examine the state after being postponed.
+ //
+ if (t.dependents != 0)
+ t.dependents--;
switch (target_state ts = t.state ())
{