From 262373abf14b8105b13c7124ec9b590e56497351 Mon Sep 17 00:00:00 2001 From: Ivailo Monev Date: Thu, 22 Sep 2016 22:01:06 +0000 Subject: [PATCH] make copies of the string in QTextBoundaryFinder, use const in args where possible Signed-off-by: Ivailo Monev --- src/core/tools/qtextboundaryfinder.cpp | 14 ++++++-------- src/core/tools/qtextboundaryfinder.h | 4 ++-- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/core/tools/qtextboundaryfinder.cpp b/src/core/tools/qtextboundaryfinder.cpp index 05bce0a72..4a4e49b08 100644 --- a/src/core/tools/qtextboundaryfinder.cpp +++ b/src/core/tools/qtextboundaryfinder.cpp @@ -160,14 +160,14 @@ QTextBoundaryFinder::QTextBoundaryFinder(BoundaryType type, const QString &strin { d->pos = 0; d->length = string.size(); - d->string = string; + d->string = QString(string); } /*! Creates a QTextBoundaryFinder object of \a type operating on \a chars with \a length. */ -QTextBoundaryFinder::QTextBoundaryFinder(BoundaryType type, const QChar *chars, int length) +QTextBoundaryFinder::QTextBoundaryFinder(BoundaryType type, const QChar *chars, const int length) : d(new QTextBoundaryFinderPrivate) , t(type) { @@ -218,7 +218,7 @@ int QTextBoundaryFinder::position() const \sa position() */ -void QTextBoundaryFinder::setPosition(int position) +void QTextBoundaryFinder::setPosition(const int position) { d->pos = qBound(0, position, d->length); } @@ -235,11 +235,11 @@ void QTextBoundaryFinder::setPosition(int position) */ /*! - Returns the string the QTextBoundaryFinder object operates on. + Returns the string the QTextBoundaryFinder object operates on. */ QString QTextBoundaryFinder::string() const { - return d->string; + return QString(d->string); } @@ -355,9 +355,7 @@ bool QTextBoundaryFinder::isAtBoundary() const */ QTextBoundaryFinder::BoundaryReasons QTextBoundaryFinder::boundaryReasons() const { - if (!d) - return QTextBoundaryFinder::NotAtBoundary; - if (!isAtBoundary()) + if (!d || !isAtBoundary()) return QTextBoundaryFinder::NotAtBoundary; if (d->pos == 0) { if (d->string[d->pos].isSpace()) diff --git a/src/core/tools/qtextboundaryfinder.h b/src/core/tools/qtextboundaryfinder.h index a4bab5014..5520d15bb 100644 --- a/src/core/tools/qtextboundaryfinder.h +++ b/src/core/tools/qtextboundaryfinder.h @@ -76,7 +76,7 @@ public: Q_DECLARE_FLAGS(BoundaryReasons, BoundaryReason) QTextBoundaryFinder(BoundaryType type, const QString &string); - QTextBoundaryFinder(BoundaryType type, const QChar *chars, int length); + QTextBoundaryFinder(BoundaryType type, const QChar *chars, const int length); inline bool isValid() const { return d; } @@ -86,7 +86,7 @@ public: void toStart(); void toEnd(); int position() const; - void setPosition(int position); + void setPosition(const int position); int toNextBoundary(); int toPreviousBoundary(); -- 2.11.0