Commit efc85b2a3d8af1111fbd9004a62fb49767962538
1 parent
ffbadb9b
check URL for errors before attempting to download, for #207
Showing
1 changed file
with
14 additions
and
11 deletions
openbr/plugins/misc.cpp
| ... | ... | @@ -119,17 +119,20 @@ private: |
| 119 | 119 | } else { |
| 120 | 120 | if (!nam.hasLocalData()) |
| 121 | 121 | nam.setLocalData(new QNetworkAccessManager()); |
| 122 | - QNetworkReply *reply = nam.localData()->get(QNetworkRequest(url)); | |
| 123 | - | |
| 124 | - reply->waitForReadyRead(-1); | |
| 125 | - while (!reply->isFinished()) | |
| 126 | - QCoreApplication::processEvents(); | |
| 127 | - | |
| 128 | - if (reply->error() != QNetworkReply::NoError) { | |
| 129 | - qDebug() << reply->errorString() << url; | |
| 130 | - reply->deleteLater(); | |
| 131 | - } else { | |
| 132 | - device = reply; | |
| 122 | + const QUrl qURL(url, QUrl::StrictMode); | |
| 123 | + if (qURL.isValid() && !qURL.isRelative()) { | |
| 124 | + QNetworkReply *reply = nam.localData()->get(QNetworkRequest(qURL)); | |
| 125 | + | |
| 126 | + reply->waitForReadyRead(-1); | |
| 127 | + while (!reply->isFinished()) | |
| 128 | + QCoreApplication::processEvents(); | |
| 129 | + | |
| 130 | + if (reply->error() != QNetworkReply::NoError) { | |
| 131 | + qDebug() << reply->errorString() << url; | |
| 132 | + reply->deleteLater(); | |
| 133 | + } else { | |
| 134 | + device = reply; | |
| 135 | + } | |
| 133 | 136 | } |
| 134 | 137 | } |
| 135 | 138 | ... | ... |