Don't abandon job when image request is cancelled
Aborting the request causes a lot of logged messages. In theory, not stopping the job causes some overhead, but that's negligible and the provider is on its way out anyway.
This commit is contained in:
@@ -98,18 +98,6 @@ void ThumbnailResponse::prepareResult()
|
|||||||
Q_EMIT finished();
|
Q_EMIT finished();
|
||||||
}
|
}
|
||||||
|
|
||||||
void ThumbnailResponse::doCancel()
|
|
||||||
{
|
|
||||||
if (!Controller::instance().activeConnection()) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// Runs in the main thread, not QML thread
|
|
||||||
if (job) {
|
|
||||||
Q_ASSERT(QThread::currentThread() == job->thread());
|
|
||||||
job->abandon();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
QQuickTextureFactory *ThumbnailResponse::textureFactory() const
|
QQuickTextureFactory *ThumbnailResponse::textureFactory() const
|
||||||
{
|
{
|
||||||
QReadLocker _(&lock);
|
QReadLocker _(&lock);
|
||||||
@@ -122,11 +110,6 @@ QString ThumbnailResponse::errorString() const
|
|||||||
return errorStr;
|
return errorStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ThumbnailResponse::cancel()
|
|
||||||
{
|
|
||||||
QMetaObject::invokeMethod(this, &ThumbnailResponse::doCancel, Qt::QueuedConnection);
|
|
||||||
}
|
|
||||||
|
|
||||||
QQuickImageResponse *MatrixImageProvider::requestImageResponse(const QString &id, const QSize &requestedSize)
|
QQuickImageResponse *MatrixImageProvider::requestImageResponse(const QString &id, const QSize &requestedSize)
|
||||||
{
|
{
|
||||||
return new ThumbnailResponse(id, requestedSize);
|
return new ThumbnailResponse(id, requestedSize);
|
||||||
|
|||||||
@@ -25,7 +25,6 @@ public:
|
|||||||
private Q_SLOTS:
|
private Q_SLOTS:
|
||||||
void startRequest();
|
void startRequest();
|
||||||
void prepareResult();
|
void prepareResult();
|
||||||
void doCancel();
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
const QString mediaId;
|
const QString mediaId;
|
||||||
@@ -39,7 +38,6 @@ private:
|
|||||||
|
|
||||||
QQuickTextureFactory *textureFactory() const override;
|
QQuickTextureFactory *textureFactory() const override;
|
||||||
QString errorString() const override;
|
QString errorString() const override;
|
||||||
void cancel() override;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class MatrixImageProvider : public QQuickAsyncImageProvider
|
class MatrixImageProvider : public QQuickAsyncImageProvider
|
||||||
|
|||||||
Reference in New Issue
Block a user