diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2012-08-04 08:16:47 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-08-07 16:43:11 +0200 |
commit | bfabd0de511336abf50594b5e98f94d3eb36cb73 (patch) | |
tree | 684a1f4e50024820ffd9d33478a749476948f77c /src/corelib/io/qurlidna.cpp | |
parent | 045a5e3b42747be1198ec6d33d344aaed1b3618b (diff) |
QUrl::idnWhiteList(): add QList::reserve() call
Avoids reallocation.
Change-Id: I3238574590463596a797d237b066ef60214392a7
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/io/qurlidna.cpp')
-rw-r--r-- | src/corelib/io/qurlidna.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/corelib/io/qurlidna.cpp b/src/corelib/io/qurlidna.cpp index 01497d16ab..21ad1b7fca 100644 --- a/src/corelib/io/qurlidna.cpp +++ b/src/corelib/io/qurlidna.cpp @@ -2358,6 +2358,7 @@ static const char * const idn_whitelist[] = { "xn--mgberp4a5d4ar", // Saudi Arabia "xn--wgbh1c" // Egypt }; +static const size_t idn_whitelist_size = sizeof idn_whitelist / sizeof *idn_whitelist; static QStringList *user_idn_whitelist = 0; @@ -2406,7 +2407,7 @@ static bool qt_is_idn_enabled(const QString &domain) return user_idn_whitelist->contains(tldString); int l = 0; - int r = sizeof(idn_whitelist)/sizeof(const char *) - 1; + int r = idn_whitelist_size - 1; int i = (l + r + 1) / 2; while (r != l) { @@ -2558,8 +2559,9 @@ QStringList QUrl::idnWhitelist() if (user_idn_whitelist) return *user_idn_whitelist; QStringList list; + list.reserve(idn_whitelist_size); unsigned int i = 0; - while (i < sizeof(idn_whitelist)/sizeof(const char *)) { + while (i < idn_whitelist_size) { list << QLatin1String(idn_whitelist[i]); ++i; } |