diff options
author | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2009-11-17 14:27:48 (GMT) |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2009-11-17 14:27:48 (GMT) |
commit | 62e641691b9a3eadc8b9fb2e31150cdf5b66115d (patch) | |
tree | 9033ae42f5b599e564421db69737ca0c70a85f53 /src/network/access/qhttpnetworkconnection.cpp | |
parent | e76c4c03c98091ee3e509a0f9b64daba472567ff (diff) | |
parent | e02859c3c7910ab3de0ec594fd493df946a5102d (diff) | |
download | Qt-62e641691b9a3eadc8b9fb2e31150cdf5b66115d.zip Qt-62e641691b9a3eadc8b9fb2e31150cdf5b66115d.tar.gz Qt-62e641691b9a3eadc8b9fb2e31150cdf5b66115d.tar.bz2 |
Merge remote branch 'mainline/4.6' into 4.6
Diffstat (limited to 'src/network/access/qhttpnetworkconnection.cpp')
-rw-r--r-- | src/network/access/qhttpnetworkconnection.cpp | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp index 8dd7a00..2dbd512 100644 --- a/src/network/access/qhttpnetworkconnection.cpp +++ b/src/network/access/qhttpnetworkconnection.cpp @@ -194,11 +194,20 @@ void QHttpNetworkConnectionPrivate::prepareRequest(HttpMessagePair &messagePair) // some websites mandate an accept-language header and fail // if it is not sent. This is a problem with the website and - // not with us, but we work around this by setting a - // universal one always. + // not with us, but we work around this by setting + // one always. value = request.headerField("accept-language"); - if (value.isEmpty()) - request.setHeaderField("accept-language", "en,*"); + if (value.isEmpty()) { + QString systemLocale = QLocale::system().name().replace(QChar::fromAscii('_'),QChar::fromAscii('-')); + QString acceptLanguage; + if (systemLocale == QLatin1String("C")) + acceptLanguage = QString::fromAscii("en,*"); + else if (systemLocale.startsWith(QLatin1String("en-"))) + acceptLanguage = QString::fromAscii("%1,*").arg(systemLocale); + else + acceptLanguage = QString::fromAscii("%1,en,*").arg(systemLocale); + request.setHeaderField("Accept-Language", acceptLanguage.toAscii()); + } // set the User Agent value = request.headerField("user-agent"); |