diff options
author | Kai Koehne <kai.koehne@theqtcompany.com> | 2015-10-12 09:28:00 +0200 |
---|---|---|
committer | Kai Koehne <kai.koehne@theqtcompany.com> | 2015-10-12 09:30:51 +0200 |
commit | 6c04ab6712516dd76addf35cd924ee73603dbbf3 (patch) | |
tree | 7b96443eb972bb6e84ecb6ead777c0a3b8dc2995 /src/libs/installer/packagemanagerproxyfactory.cpp | |
parent | 175ffec58f9e4f513004ec53ab03f06561096913 (diff) | |
parent | a81f19295745d081306f9417d6c45fda252fcb89 (diff) |
Merge remote-tracking branch 'origin/2.0'
Change-Id: Ia4c0c6766b52626798197c646043407df8de1fd6
Diffstat (limited to 'src/libs/installer/packagemanagerproxyfactory.cpp')
-rw-r--r-- | src/libs/installer/packagemanagerproxyfactory.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/libs/installer/packagemanagerproxyfactory.cpp b/src/libs/installer/packagemanagerproxyfactory.cpp index 5e8e3188b..7626a26d4 100644 --- a/src/libs/installer/packagemanagerproxyfactory.cpp +++ b/src/libs/installer/packagemanagerproxyfactory.cpp @@ -75,7 +75,19 @@ QList<QNetworkProxy> PackageManagerProxyFactory::queryProxy(const QNetworkProxyQ proxyUrl.userName(), proxyUrl.password()); } #endif - return QNetworkProxyFactory::systemProxyForQuery(query); + QList<QNetworkProxy> systemProxies = systemProxyForQuery(query); + + auto proxyIter = systemProxies.begin(); + for (; proxyIter != systemProxies.end(); ++proxyIter) { + QNetworkProxy &proxy = *proxyIter; + auto p = std::find_if(m_proxyCredentials.constBegin(), m_proxyCredentials.constEnd(), + FindProxyCredential(proxy.hostName(), proxy.port())); + if (p != m_proxyCredentials.constEnd()) { + proxy.setUser(p->user); + proxy.setPassword(p->password); + } + } + return systemProxies; } if ((settings.proxyType() == Settings::NoProxy)) |