From 2dfb6dcc5d181f21b30ed4eaa90674978427102c Mon Sep 17 00:00:00 2001 From: Luigi Pirelli Date: Wed, 8 Feb 2017 12:09:57 +0100 Subject: [PATCH] Moved check single value in expressionFromOgcFilter --- src/core/qgsogcutils.cpp | 10 ++++++++++ src/core/symbology-ng/qgssymbollayerutils.cpp | 8 -------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/core/qgsogcutils.cpp b/src/core/qgsogcutils.cpp index 7f8377ff0bdf..464d52ec3109 100644 --- a/src/core/qgsogcutils.cpp +++ b/src/core/qgsogcutils.cpp @@ -1603,6 +1603,16 @@ QgsExpression* QgsOgcUtils::expressionFromOgcFilter( const QDomElement& element QgsExpression *expr = new QgsExpression(); + // check if it is a single string value not having DOM elements + // that express OGC operators + if ( element.firstChild().nodeType() == QDomNode::TextNode ) + { + expr->setExpression( element.firstChild().nodeValue() ); + return expr; + } + + // then check OGC DOM elements that contain OGC tags specifying + // OGC operators. QDomElement childElem = element.firstChildElement(); while ( !childElem.isNull() ) { diff --git a/src/core/symbology-ng/qgssymbollayerutils.cpp b/src/core/symbology-ng/qgssymbollayerutils.cpp index cabc25dcab56..4875ae2c1466 100644 --- a/src/core/symbology-ng/qgssymbollayerutils.cpp +++ b/src/core/symbology-ng/qgssymbollayerutils.cpp @@ -2515,14 +2515,6 @@ bool QgsSymbolLayerUtils::functionFromSldElement( QDomElement &element, QString return false; } - // check if it is a single string value - if ( elem.hasChildNodes() && - elem.firstChild().nodeType() == QDomNode::TextNode ) - { - function = elem.firstChild().nodeValue(); - return true; - } - // parse ogc:Filter QgsExpression *expr = QgsOgcUtils::expressionFromOgcFilter( elem ); if ( !expr )