From 64e9988ba715e6e196b84e4a69c871c761562bbd Mon Sep 17 00:00:00 2001 From: Renaud G Date: Mon, 27 Aug 2018 01:03:08 +0200 Subject: -New API for validating validor. Prevent endless loop in R operator. --- operationcondition.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'operationcondition.cpp') diff --git a/operationcondition.cpp b/operationcondition.cpp index 86c013a..2a83fec 100644 --- a/operationcondition.cpp +++ b/operationcondition.cpp @@ -21,7 +21,7 @@ #include "operationcondition.h" OperationCondition::OperationCondition() - : m_operator(Modulo),m_boolean(nullptr),m_value(0) + : m_operator(Modulo),m_boolean(nullptr),m_value(nullptr) { } @@ -103,17 +103,22 @@ QString OperationCondition::toString() switch (m_operator) { case Modulo: - str.append(QStringLiteral("\%")); + str.append(QStringLiteral("\\%")); break; } return QStringLiteral("[%1%2%3]").arg(str).arg(valueToScalar()).arg(m_boolean->toString()); } -quint64 OperationCondition::getValidRangeSize(quint64 faces) const +bool OperationCondition::isValidRangeSize(std::pair range) const { auto value = valueToScalar(); + bool valid = true; + if(value==0) - return 0; - return faces/value; + valid = false; + /* else if(nullptr != m_boolean) + valid = m_boolean->isValidRangeSize(range);*/ + + return valid; } Validator* OperationCondition::getCopy() const -- cgit v1.2.3-70-g09d2