function RulesReactionRule::evaluate
Reaction rules can't add variables to the parent scope, so clone $state.
File
-
includes/
rules.plugins.inc, line 458
Class
- RulesReactionRule
- Represents rules getting triggered by events.
Code
public function evaluate(RulesState $state) {
// Implement recursion prevention for reaction rules.
if ($state->isBlocked($this)) {
return rules_log('Not evaluating @plugin %label to prevent recursion.', array(
'%label' => $this->label(),
'@plugin' => $this->plugin(),
), RulesLog::INFO, $this);
}
$state->block($this);
$copy = clone $state;
parent::evaluate($copy);
$state->unblock($this);
}