summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorHarald Fernengel <harald.fernengel@nokia.com>2011-12-20 13:42:17 +0100
committerQt by Nokia <qt-info@nokia.com>2011-12-20 16:18:27 +0100
commit2532ddc48b802fd8d4f5f15e128c932df85f007e (patch)
tree2f42785648ec99170ca6b120d7f875286406712f /src
parentb8ac9da63a833b0568f12bfe5c37da99c9570523 (diff)
make QString::fromLatin1 partially inline
This allows us to benefit from compile time optimizations when calling strlen() Change-Id: If6694117e613a012fce97f8664e6b43005d255de Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src')
-rw-r--r--src/corelib/tools/qstring.cpp6
-rw-r--r--src/corelib/tools/qstring.h6
2 files changed, 6 insertions, 6 deletions
diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp
index fb818e37b8..241a77d057 100644
--- a/src/corelib/tools/qstring.cpp
+++ b/src/corelib/tools/qstring.cpp
@@ -3818,7 +3818,7 @@ QString::Data *QString::fromAscii_helper(const char *str, int size)
return fromLatin1_helper(str, size);
}
-/*!
+/*! \fn QString QString::fromLatin1(const char *str, int size)
Returns a QString initialized with the first \a size characters
of the Latin-1 string \a str.
@@ -3827,10 +3827,6 @@ QString::Data *QString::fromAscii_helper(const char *str, int size)
\sa toLatin1(), fromAscii(), fromUtf8(), fromLocal8Bit()
*/
-QString QString::fromLatin1(const char *str, int size)
-{
- return QString(fromLatin1_helper(str, size), 0);
-}
/*!
diff --git a/src/corelib/tools/qstring.h b/src/corelib/tools/qstring.h
index 4e1e67bfa6..cccf275ffd 100644
--- a/src/corelib/tools/qstring.h
+++ b/src/corelib/tools/qstring.h
@@ -408,7 +408,11 @@ public:
QVector<uint> toUcs4() const Q_REQUIRED_RESULT;
static QString fromAscii(const char *, int size = -1);
- static QString fromLatin1(const char *, int size = -1);
+ static inline QString fromLatin1(const char *str, int size = -1)
+ {
+ // make this inline so we can benefit from strlen() compile time optimization
+ return QString(fromLatin1_helper(str, (str && size == -1) ? int(strlen(str)) : size), 0);
+ }
static QString fromUtf8(const char *, int size = -1);
static QString fromLocal8Bit(const char *, int size = -1);
static QString fromUtf16(const ushort *, int size = -1);