summaryrefslogtreecommitdiffstats
path: root/src/network
diff options
context:
space:
mode:
Diffstat (limited to 'src/network')
-rw-r--r--src/network/access/qnetworkaccessmanager.cpp2
-rw-r--r--src/network/access/qnetworkreplyimpl.cpp10
-rw-r--r--src/network/access/qnetworkreplyimpl_p.h2
-rw-r--r--src/network/bearer/qnetworksession.cpp9
-rw-r--r--src/network/bearer/qnetworksession_p.h4
5 files changed, 8 insertions, 19 deletions
diff --git a/src/network/access/qnetworkaccessmanager.cpp b/src/network/access/qnetworkaccessmanager.cpp
index 8fe1857..197d89e 100644
--- a/src/network/access/qnetworkaccessmanager.cpp
+++ b/src/network/access/qnetworkaccessmanager.cpp
@@ -944,8 +944,6 @@ QNetworkReply *QNetworkAccessManager::createRequest(QNetworkAccessManager::Opera
if (req.url().scheme() != QLatin1String("file") && !req.url().scheme().isEmpty()) {
connect(this, SIGNAL(networkSessionConnected()),
reply, SLOT(_q_networkSessionConnected()));
- if (d->networkSession)
- connect(d->networkSession, SIGNAL(closed()), reply, SLOT(_q_networkSessionClosed()));
}
QNetworkReplyImplPrivate *priv = reply->d_func();
priv->manager = this;
diff --git a/src/network/access/qnetworkreplyimpl.cpp b/src/network/access/qnetworkreplyimpl.cpp
index 9ef2ed8..7fc0097 100644
--- a/src/network/access/qnetworkreplyimpl.cpp
+++ b/src/network/access/qnetworkreplyimpl.cpp
@@ -262,16 +262,6 @@ void QNetworkReplyImplPrivate::_q_networkSessionConnected()
}
}
-void QNetworkReplyImplPrivate::_q_networkSessionClosed()
-{
- if (state != Finished) {
- state = Working;
- error(QNetworkReply::UnknownNetworkError,
- QCoreApplication::translate("QNetworkReply", "Network session closed."));
- finished();
- }
-}
-
void QNetworkReplyImplPrivate::_q_networkSessionFailed()
{
// Abort waiting replies.
diff --git a/src/network/access/qnetworkreplyimpl_p.h b/src/network/access/qnetworkreplyimpl_p.h
index 8e498d5..fcb3397 100644
--- a/src/network/access/qnetworkreplyimpl_p.h
+++ b/src/network/access/qnetworkreplyimpl_p.h
@@ -100,7 +100,6 @@ public:
Q_PRIVATE_SLOT(d_func(), void _q_bufferOutgoingData())
Q_PRIVATE_SLOT(d_func(), void _q_bufferOutgoingDataFinished())
Q_PRIVATE_SLOT(d_func(), void _q_networkSessionConnected())
- Q_PRIVATE_SLOT(d_func(), void _q_networkSessionClosed())
Q_PRIVATE_SLOT(d_func(), void _q_networkSessionFailed())
};
@@ -135,7 +134,6 @@ public:
void _q_bufferOutgoingData();
void _q_bufferOutgoingDataFinished();
void _q_networkSessionConnected();
- void _q_networkSessionClosed();
void _q_networkSessionFailed();
void setup(QNetworkAccessManager::Operation op, const QNetworkRequest &request,
diff --git a/src/network/bearer/qnetworksession.cpp b/src/network/bearer/qnetworksession.cpp
index d05f20e..cf9f4b2 100644
--- a/src/network/bearer/qnetworksession.cpp
+++ b/src/network/bearer/qnetworksession.cpp
@@ -231,7 +231,7 @@ QNetworkSession::QNetworkSession(const QNetworkConfiguration& connectionConfig,
d->q = this;
d->publicConfig = connectionConfig;
d->syncStateWithInterface();
- connect(d, SIGNAL(opened()), this, SIGNAL(opened()));
+ connect(d, SIGNAL(quitPendingWaitsForOpened()), this, SIGNAL(opened()));
connect(d, SIGNAL(error(QNetworkSession::SessionError)),
this, SIGNAL(error(QNetworkSession::SessionError)));
connect(d, SIGNAL(stateChanged(QNetworkSession::State)),
@@ -308,9 +308,10 @@ bool QNetworkSession::waitForOpened(int msecs)
return false;
QEventLoop* loop = new QEventLoop(this);
- connect(d, SIGNAL(opened()), loop, SLOT(quit()));
- connect(d, SIGNAL(closed()), loop, SLOT(quit()));
- connect(d, SIGNAL(error(QNetworkSession::SessionError)), loop, SLOT(quit()));
+ QObject::connect(d, SIGNAL(quitPendingWaitsForOpened()),
+ loop, SLOT(quit()));
+ QObject::connect(this, SIGNAL(error(QNetworkSession::SessionError)),
+ loop, SLOT(quit()));
//final call
if (msecs>=0)
diff --git a/src/network/bearer/qnetworksession_p.h b/src/network/bearer/qnetworksession_p.h
index 5eef8e3..76691b3 100644
--- a/src/network/bearer/qnetworksession_p.h
+++ b/src/network/bearer/qnetworksession_p.h
@@ -116,7 +116,9 @@ protected:
}
Q_SIGNALS:
- void opened();
+ //releases any pending waitForOpened() calls
+ void quitPendingWaitsForOpened();
+
void error(QNetworkSession::SessionError error);
void stateChanged(QNetworkSession::State state);
void closed();