diff --git a/libwccl/ops/match/applyoperator.cpp b/libwccl/ops/match/applyoperator.cpp index 9e9816ad85dfe0c9b1aa937f22a6bacfcc918c45..edcefc02e3f33e55cd9311b53343d644fc24263b 100644 --- a/libwccl/ops/match/applyoperator.cpp +++ b/libwccl/ops/match/applyoperator.cpp @@ -38,12 +38,12 @@ void ApplyOperator::execute(const ActionExecContext &context) const context.sentence_context().set_position(orig_pos + 1); } else { // there was a match - check conditions of apply + matches->append(match.get_match()); // the match goes to $m:_M[0] bool should_act = true; for(size_t i = 0; should_act && i < apply_conditions_->size(); ++i) { should_act = (*apply_conditions_)[i]->apply(context)->get_value(); } if (should_act) { - matches->append(match.get_match()); // the match goes to $m:_M[0] foreach (const boost::shared_ptr<MatchAction>& action, *actions_) { action->execute(context); }