summaryrefslogtreecommitdiffstats
path: root/src/network/access/qhttpnetworkconnection.cpp
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@nokia.com>2009-11-17 14:27:48 (GMT)
committerOswald Buddenhagen <oswald.buddenhagen@nokia.com>2009-11-17 14:27:48 (GMT)
commit62e641691b9a3eadc8b9fb2e31150cdf5b66115d (patch)
tree9033ae42f5b599e564421db69737ca0c70a85f53 /src/network/access/qhttpnetworkconnection.cpp
parente76c4c03c98091ee3e509a0f9b64daba472567ff (diff)
parente02859c3c7910ab3de0ec594fd493df946a5102d (diff)
downloadQt-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.cpp17
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");