From f45e093cf1f255b38198b9a4e1d74707c0dba131 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Wed, 5 Jul 2017 20:02:14 +0200 Subject: [PATCH] don't access TimeManager at this point... besides, we want the given timestamp anyways --- server/ruleengine.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/server/ruleengine.cpp b/server/ruleengine.cpp index 28415bd0..12fbfb68 100644 --- a/server/ruleengine.cpp +++ b/server/ruleengine.cpp @@ -122,8 +122,7 @@ namespace guhserver { instance available from \l{GuhCore}. This one should be used instead of creating multiple ones. */ RuleEngine::RuleEngine(QObject *parent) : - QObject(parent), - m_lastEvaluationTime(QDateTime::currentDateTime()) + QObject(parent) { GuhSettings settings(GuhSettings::SettingsRoleRules); qCDebug(dcRuleEngine) << "loading rules from" << settings.fileName(); @@ -384,6 +383,11 @@ QList RuleEngine::evaluateEvent(const Event &event) */ QList RuleEngine::evaluateTime(const QDateTime &dateTime) { + if (!m_lastEvaluationTime.isValid()) { + m_lastEvaluationTime = dateTime; + m_lastEvaluationTime.addSecs(-1); + } + QList rules; foreach (const Rule &r, m_rules.values()) { @@ -427,7 +431,7 @@ QList RuleEngine::evaluateTime(const QDateTime &dateTime) } } - m_lastEvaluationTime = QDateTime::currentDateTime(); + m_lastEvaluationTime = dateTime; return rules; }