Evaluating a given event to true makes all other events of the same type and category to fire


When a single event of a given type/category evaluates to true, RulesManager assumes all other of the same type/category in this and other rules are true too and fires actions on all those rules... That can hurt a lot sometimes:/

Managed to fix it quite easily - filtered out events that evaluate to false instead of just checking if any evaluates to true.

I'm attaching a file with patch to the latest revision that fixes the issue. Basically, I replaced the
events.Any(<event evaluates to true>)
check to
events = events.Where(<event evaluates to true>)
so only the rules that evaluate to true get fired.

file attachments

Closed Jan 26, 2012 at 12:15 AM by sebastienros


sebastienros wrote Jan 26, 2012 at 12:14 AM

Fixed in changeset 204bdef384f4