diff --git a/tools/xmlpatterns/qapplicationargumentparser.cpp b/tools/xmlpatterns/qapplicationargumentparser.cpp
index 9bf407baeec2496f9a203cc8ad6e5aed25b79d34..031e088bbb9dba014499860fa6eeeb3b35a45bb0 100644
--- a/tools/xmlpatterns/qapplicationargumentparser.cpp
+++ b/tools/xmlpatterns/qapplicationargumentparser.cpp
@@ -464,7 +464,7 @@ QString QApplicationArgumentParserPrivate::lineWrap(const QString &input,
         return input;
 
     int from = wrapFinder.toPreviousBoundary();
-    output.append(input.left(from));
+    output.append(input.leftRef(from));
 
     while(true)
     {
@@ -476,7 +476,7 @@ QString QApplicationArgumentParserPrivate::lineWrap(const QString &input,
 
             output.append(QLatin1Char('\n'));
             output.append(indent);
-            output.append(input.mid(from, currentWidthPos - from).trimmed());
+            output.append(input.midRef(from, currentWidthPos - from).trimmed().toString());
             from += (currentWidthPos - from);
         }
         else
@@ -484,7 +484,7 @@ QString QApplicationArgumentParserPrivate::lineWrap(const QString &input,
             /* Append the remains.  */
             output.append(QLatin1Char('\n'));
             output.append(indent);
-            output.append(input.mid(from).trimmed());
+            output.append(input.midRef(from).trimmed().toString());
             break;
         }
     }