Skip to content

Commit 1e2838f

Browse files
committed
log network timeouts
1 parent bb623a8 commit 1e2838f

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed

src/core/qgsnetworkaccessmanager.cpp

+16-1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
***************************************************************************/
2121

2222
#include <qgsnetworkaccessmanager.h>
23+
#include <qgsmessagelog.h>
2324
#include <qgslogger.h>
2425

2526
#include <QUrl>
@@ -132,9 +133,23 @@ QNetworkReply *QgsNetworkAccessManager::createRequest( QNetworkAccessManager::Op
132133

133134
// abort request, when network timeout happens
134135
QTimer *timer = new QTimer( reply );
136+
connect( timer, SIGNAL( timeout() ), this, SLOT( abortRequest() ) );
135137

136138
QSettings s;
137-
timer->singleShot( s.value( "/qgis/networkAndProxy/networkTimeout", "20000" ).toInt(), reply, SLOT( abort() ) );
139+
timer->start( s.value( "/qgis/networkAndProxy/networkTimeout", "20000" ).toInt() );
138140

139141
return reply;
140142
}
143+
144+
void QgsNetworkAccessManager::abortRequest()
145+
{
146+
QTimer *timer = qobject_cast<QTimer *>( sender() );
147+
Q_ASSERT( timer );
148+
149+
QNetworkReply *reply = qobject_cast<QNetworkReply *>( timer->parent() );
150+
Q_ASSERT( reply );
151+
152+
QgsMessageLog::logMessage( tr( "Network request %1 timed out" ).arg( reply->url().toString() ), tr( "Network" ) );
153+
154+
reply->abort();
155+
}

src/core/qgsnetworkaccessmanager.h

+3
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,9 @@ class CORE_EXPORT QgsNetworkAccessManager : public QNetworkAccessManager
7676
void requestAboutToBeCreated( QNetworkAccessManager::Operation, const QNetworkRequest &, QIODevice * );
7777
void requestCreated( QNetworkReply * );
7878

79+
private slots:
80+
void abortRequest();
81+
7982
protected:
8083
virtual QNetworkReply *createRequest( QNetworkAccessManager::Operation op, const QNetworkRequest & req, QIODevice * outgoingData = 0 );
8184

0 commit comments

Comments
 (0)