240 - Multiple "Check every XX seconds" triggers conflict
performPeriodicCheck is passed the same name for every trigger. This means all triggers share the same elapsed time variable, thus the time elapsed is incremented once for every trigger for every periodic check, only one trigger can trigger per periodic check, and only the trigger(s) with the smallest time period will be triggered.
--- a/Code/Triggers.lua +++ b/Code/Triggers.lua @@ -1649,7 +1649,7 @@ function Parrot_Triggers:OnTriggerCondition(name, arg, uid, check) end end elseif name == "Check every XX seconds" then - good = performPeriodicCheck(name, param) + good = performPeriodicCheck(t.name, param) else good = checkPrimaryCondition(param, arg, check) end
| User | When | Change |
|---|---|---|
| zmnspencer | Mar 23, 2014 at 03:23 UTC | Create |
Facts
- Reported
- Mar 23, 2014
- Status
- New - Issue has not had initial review yet.
- Type
- Patch - Source code patch for review
- Priority
- Medium - Normal priority.
- Votes
- 0