diff options
Diffstat (limited to 'src/network/access/qnetworkreplyhttpimpl.cpp')
-rw-r--r-- | src/network/access/qnetworkreplyhttpimpl.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/network/access/qnetworkreplyhttpimpl.cpp b/src/network/access/qnetworkreplyhttpimpl.cpp index e019ade314..54b98ceb78 100644 --- a/src/network/access/qnetworkreplyhttpimpl.cpp +++ b/src/network/access/qnetworkreplyhttpimpl.cpp @@ -1726,8 +1726,13 @@ void QNetworkReplyHttpImplPrivate::_q_networkSessionFailed() // Abort waiting and working replies. if (state == WaitingForSession || state == Working) { state = Working; - error(QNetworkReplyImpl::UnknownNetworkError, - QCoreApplication::translate("QNetworkReply", "Network session error.")); + QSharedPointer<QNetworkSession> session(manager->d_func()->networkSession); + QString errorStr; + if (session) + errorStr = session->errorString(); + else + errorStr = QCoreApplication::translate("QNetworkReply", "Network session error."); + error(QNetworkReplyImpl::NetworkSessionFailedError, errorStr); finished(); } } |