From 11b150d935ebdd422e3d3edb698f2e08c45e2229 Mon Sep 17 00:00:00 2001
From: Friedemann Kleint <Friedemann.Kleint@digia.com>
Date: Fri, 27 Sep 2013 14:10:56 +0200
Subject: [PATCH] Remove QtAlgorithms usage from QtXmlPatterns.

QtAlgorithms is getting deprecated,
see http://www.mail-archive.com/development@qt-project.org/msg01603.html

Change-Id: I4e2c7bf7970ba59ca9443c545b66db9f509d946b
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
---
 src/xmlpatterns/expr/qnodesort.cpp     | 4 +++-
 src/xmlpatterns/expr/qorderby.cpp      | 6 ++++--
 src/xmlpatterns/expr/qtemplatemode.cpp | 4 +++-
 3 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/xmlpatterns/expr/qnodesort.cpp b/src/xmlpatterns/expr/qnodesort.cpp
index 58e33d03..9dd1bed0 100644
--- a/src/xmlpatterns/expr/qnodesort.cpp
+++ b/src/xmlpatterns/expr/qnodesort.cpp
@@ -43,6 +43,8 @@
 #include "qdeduplicateiterator_p.h"
 #include "qnodesort_p.h"
 
+#include <algorithm>
+
 QT_BEGIN_NAMESPACE
 
 using namespace QPatternist;
@@ -83,7 +85,7 @@ Item::Iterator::Ptr NodeSortExpression::evaluateSequence(const DynamicContext::P
         return makeListIterator(nodes);
     else
     {
-        qSort(nodes.begin(), nodes.end(), lessThanUsingNodeModel);
+        std::sort(nodes.begin(), nodes.end(), lessThanUsingNodeModel);
 
         return Item::Iterator::Ptr(new DeduplicateIterator(nodes));
     }
diff --git a/src/xmlpatterns/expr/qorderby.cpp b/src/xmlpatterns/expr/qorderby.cpp
index a5c395d0..46ac7a36 100644
--- a/src/xmlpatterns/expr/qorderby.cpp
+++ b/src/xmlpatterns/expr/qorderby.cpp
@@ -51,6 +51,8 @@
 
 #include "qorderby_p.h"
 
+#include <algorithm>
+
 QT_BEGIN_NAMESPACE
 
 using namespace QPatternist;
@@ -182,11 +184,11 @@ Item::Iterator::Ptr OrderBy::evaluateSequence(const DynamicContext::Ptr &context
     /* On one hand we could just disregard stability and always use qStableSort(), but maybe qSort()
      * is a bit faster? */
     if(m_stability == StableOrder)
-        qStableSort(tuples.begin(), tuples.end(), sorter);
+        std::stable_sort(tuples.begin(), tuples.end(), sorter);
     else
     {
         Q_ASSERT(m_stability == UnstableOrder);
-        qSort(tuples.begin(), tuples.end(), sorter);
+        std::sort(tuples.begin(), tuples.end(), sorter);
     }
 
     return makeSequenceMappingIterator<Item>(ConstPtr(this),
diff --git a/src/xmlpatterns/expr/qtemplatemode.cpp b/src/xmlpatterns/expr/qtemplatemode.cpp
index f2a5b2aa..a90efbc7 100644
--- a/src/xmlpatterns/expr/qtemplatemode.cpp
+++ b/src/xmlpatterns/expr/qtemplatemode.cpp
@@ -41,6 +41,8 @@
 
 #include "qtemplatemode_p.h"
 
+#include <algorithm>
+
 QT_BEGIN_NAMESPACE
 
 using namespace QPatternist;
@@ -53,7 +55,7 @@ bool TemplateMode::lessThanByPriority(const TemplatePattern::Ptr &t1,
 
 void TemplateMode::finalize()
 {
-    qSort(templatePatterns.begin(), templatePatterns.end(), lessThanByPriority);
+    std::sort(templatePatterns.begin(), templatePatterns.end(), lessThanByPriority);
 
     /* Now we have a list of patterns sorted by priority. */
 }
-- 
GitLab