Check content type for image in album cover fetcher search
This commit is contained in:
parent
2bcad9b637
commit
84ec4bdc79
|
@ -31,6 +31,7 @@
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QUrl>
|
#include <QUrl>
|
||||||
#include <QImage>
|
#include <QImage>
|
||||||
|
#include <QImageReader>
|
||||||
#include <QNetworkAccessManager>
|
#include <QNetworkAccessManager>
|
||||||
#include <QNetworkRequest>
|
#include <QNetworkRequest>
|
||||||
#include <QNetworkReply>
|
#include <QNetworkReply>
|
||||||
|
@ -225,20 +226,26 @@ void AlbumCoverFetcherSearch::ProviderCoverFetchFinished(QNetworkReply *reply) {
|
||||||
if (reply->error() != QNetworkReply::NoError) {
|
if (reply->error() != QNetworkReply::NoError) {
|
||||||
qLog(Error) << "Error requesting" << reply->url() << reply->errorString();
|
qLog(Error) << "Error requesting" << reply->url() << reply->errorString();
|
||||||
}
|
}
|
||||||
|
else if (reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt() != 200) {
|
||||||
|
qLog(Error) << "Error requesting" << reply->url() << "received HTTP code" << reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
|
QString mimetype = reply->header(QNetworkRequest::ContentTypeHeader).toString();
|
||||||
|
if (QImageReader::supportedMimeTypes().contains(mimetype.toUtf8())) {
|
||||||
QImage image;
|
QImage image;
|
||||||
if (image.loadFromData(reply->readAll())) {
|
if (image.loadFromData(reply->readAll())) {
|
||||||
|
|
||||||
result.score += ScoreImage(image);
|
result.score += ScoreImage(image);
|
||||||
candidate_images_.insertMulti(result.score, CandidateImage(result, image));
|
candidate_images_.insertMulti(result.score, CandidateImage(result, image));
|
||||||
|
|
||||||
qLog(Debug) << reply->url() << "from" << result.provider << "scored" << result.score;
|
qLog(Debug) << reply->url() << "from" << result.provider << "scored" << result.score;
|
||||||
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
qLog(Error) << "Error decoding image data from" << reply->url();
|
qLog(Error) << "Error decoding image data from" << reply->url();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
qLog(Error) << "Unsupported mimetype for image reader:" << mimetype << "from" << reply->url();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (pending_image_loads_.isEmpty()) {
|
if (pending_image_loads_.isEmpty()) {
|
||||||
// We've fetched everything we wanted to fetch for now, check if we have an image that's good enough.
|
// We've fetched everything we wanted to fetch for now, check if we have an image that's good enough.
|
||||||
|
|
Loading…
Reference in New Issue