Fix narrowing conversion in album cover loader
This commit is contained in:
@@ -482,9 +482,9 @@ void AlbumCoverChoiceController::ShowCover(const Song &song, const QPixmap &pixm
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qint64 AlbumCoverChoiceController::SearchCoverAutomatically(const Song &song) {
|
quint64 AlbumCoverChoiceController::SearchCoverAutomatically(const Song &song) {
|
||||||
|
|
||||||
qint64 id = cover_fetcher_->FetchAlbumCover(song.effective_albumartist(), song.album(), song.title(), true);
|
quint64 id = cover_fetcher_->FetchAlbumCover(song.effective_albumartist(), song.album(), song.title(), true);
|
||||||
|
|
||||||
cover_fetching_tasks_[id] = song;
|
cover_fetching_tasks_[id] = song;
|
||||||
|
|
||||||
@@ -640,12 +640,12 @@ void AlbumCoverChoiceController::SaveCoverEmbeddedAutomatic(const Song &song, co
|
|||||||
urls.reserve(songs.count());
|
urls.reserve(songs.count());
|
||||||
for (const Song &s : songs) urls << s.url();
|
for (const Song &s : songs) urls << s.url();
|
||||||
if (result.is_jpeg()) {
|
if (result.is_jpeg()) {
|
||||||
qint64 id = app_->album_cover_loader()->SaveEmbeddedCoverAsync(urls, result.image_data);
|
quint64 id = app_->album_cover_loader()->SaveEmbeddedCoverAsync(urls, result.image_data);
|
||||||
QMutexLocker l(&mutex_cover_save_tasks_);
|
QMutexLocker l(&mutex_cover_save_tasks_);
|
||||||
cover_save_tasks_.insert(id, song);
|
cover_save_tasks_.insert(id, song);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
qint64 id = app_->album_cover_loader()->SaveEmbeddedCoverAsync(urls, result.image);
|
quint64 id = app_->album_cover_loader()->SaveEmbeddedCoverAsync(urls, result.image);
|
||||||
QMutexLocker l(&mutex_cover_save_tasks_);
|
QMutexLocker l(&mutex_cover_save_tasks_);
|
||||||
cover_save_tasks_.insert(id, song);
|
cover_save_tasks_.insert(id, song);
|
||||||
}
|
}
|
||||||
@@ -684,7 +684,7 @@ void AlbumCoverChoiceController::SaveCoverEmbeddedAutomatic(const Song &song, co
|
|||||||
QList<QUrl> urls;
|
QList<QUrl> urls;
|
||||||
urls.reserve(songs.count());
|
urls.reserve(songs.count());
|
||||||
for (const Song &s : songs) urls << s.url();
|
for (const Song &s : songs) urls << s.url();
|
||||||
qint64 id = app_->album_cover_loader()->SaveEmbeddedCoverAsync(urls, cover_filename);
|
quint64 id = app_->album_cover_loader()->SaveEmbeddedCoverAsync(urls, cover_filename);
|
||||||
QMutexLocker l(&mutex_cover_save_tasks_);
|
QMutexLocker l(&mutex_cover_save_tasks_);
|
||||||
cover_save_tasks_.insert(id, song);
|
cover_save_tasks_.insert(id, song);
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ class AlbumCoverChoiceController : public QWidget {
|
|||||||
void ShowCover(const Song &song, const QPixmap &pixmap);
|
void ShowCover(const Song &song, const QPixmap &pixmap);
|
||||||
|
|
||||||
// Search for covers automatically
|
// Search for covers automatically
|
||||||
qint64 SearchCoverAutomatically(const Song &song);
|
quint64 SearchCoverAutomatically(const Song &song);
|
||||||
|
|
||||||
// Saves the chosen cover as manual cover path of this song in collection.
|
// Saves the chosen cover as manual cover path of this song in collection.
|
||||||
void SaveArtAutomaticToSong(Song *song, const QUrl &art_automatic);
|
void SaveArtAutomaticToSong(Song *song, const QUrl &art_automatic);
|
||||||
@@ -185,7 +185,7 @@ class AlbumCoverChoiceController : public QWidget {
|
|||||||
QAction *search_cover_auto_;
|
QAction *search_cover_auto_;
|
||||||
|
|
||||||
QMap<quint64, Song> cover_fetching_tasks_;
|
QMap<quint64, Song> cover_fetching_tasks_;
|
||||||
QMap<qint64, Song> cover_save_tasks_;
|
QMap<quint64, Song> cover_save_tasks_;
|
||||||
QMutex mutex_cover_save_tasks_;
|
QMutex mutex_cover_save_tasks_;
|
||||||
|
|
||||||
CollectionSettingsPage::SaveCoverType save_cover_type_;
|
CollectionSettingsPage::SaveCoverType save_cover_type_;
|
||||||
|
|||||||
@@ -545,55 +545,55 @@ void AlbumCoverLoader::RemoteFetchFinished(QNetworkReply *reply, const QUrl &cov
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QString &song_filename, const QString &cover_filename) {
|
quint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QString &song_filename, const QString &cover_filename) {
|
||||||
|
|
||||||
QMutexLocker l(&mutex_save_image_async_);
|
QMutexLocker l(&mutex_save_image_async_);
|
||||||
qint64 id = ++save_image_async_id_;
|
quint64 id = ++save_image_async_id_;
|
||||||
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QString, song_filename), Q_ARG(QString, cover_filename));
|
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QString, song_filename), Q_ARG(QString, cover_filename));
|
||||||
return id;
|
return id;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QString &song_filename, const QImage &image) {
|
quint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QString &song_filename, const QImage &image) {
|
||||||
|
|
||||||
QMutexLocker l(&mutex_save_image_async_);
|
QMutexLocker l(&mutex_save_image_async_);
|
||||||
qint64 id = ++save_image_async_id_;
|
quint64 id = ++save_image_async_id_;
|
||||||
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QString, song_filename), Q_ARG(QImage, image));
|
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QString, song_filename), Q_ARG(QImage, image));
|
||||||
return id;
|
return id;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QString &song_filename, const QByteArray &image_data) {
|
quint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QString &song_filename, const QByteArray &image_data) {
|
||||||
|
|
||||||
QMutexLocker l(&mutex_save_image_async_);
|
QMutexLocker l(&mutex_save_image_async_);
|
||||||
qint64 id = ++save_image_async_id_;
|
quint64 id = ++save_image_async_id_;
|
||||||
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QString, song_filename), Q_ARG(QByteArray, image_data));
|
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QString, song_filename), Q_ARG(QByteArray, image_data));
|
||||||
return id;
|
return id;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QString &cover_filename) {
|
quint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QString &cover_filename) {
|
||||||
|
|
||||||
QMutexLocker l(&mutex_save_image_async_);
|
QMutexLocker l(&mutex_save_image_async_);
|
||||||
qint64 id = ++save_image_async_id_;
|
quint64 id = ++save_image_async_id_;
|
||||||
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QList<QUrl>, urls), Q_ARG(QString, cover_filename));
|
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QList<QUrl>, urls), Q_ARG(QString, cover_filename));
|
||||||
return id;
|
return id;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QImage &image) {
|
quint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QImage &image) {
|
||||||
|
|
||||||
QMutexLocker l(&mutex_save_image_async_);
|
QMutexLocker l(&mutex_save_image_async_);
|
||||||
qint64 id = ++save_image_async_id_;
|
quint64 id = ++save_image_async_id_;
|
||||||
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QList<QUrl>, urls), Q_ARG(QImage, image));
|
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QList<QUrl>, urls), Q_ARG(QImage, image));
|
||||||
return id;
|
return id;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QByteArray &image_data) {
|
quint64 AlbumCoverLoader::SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QByteArray &image_data) {
|
||||||
|
|
||||||
QMutexLocker l(&mutex_save_image_async_);
|
QMutexLocker l(&mutex_save_image_async_);
|
||||||
qint64 id = ++save_image_async_id_;
|
quint64 id = ++save_image_async_id_;
|
||||||
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QList<QUrl>, urls), Q_ARG(QByteArray, image_data));
|
QMetaObject::invokeMethod(this, "SaveEmbeddedCover", Qt::QueuedConnection, Q_ARG(qint64, id), Q_ARG(QList<QUrl>, urls), Q_ARG(QByteArray, image_data));
|
||||||
return id;
|
return id;
|
||||||
|
|
||||||
|
|||||||
@@ -81,12 +81,12 @@ class AlbumCoverLoader : public QObject {
|
|||||||
void CancelTask(const quint64 id);
|
void CancelTask(const quint64 id);
|
||||||
void CancelTasks(const QSet<quint64> &ids);
|
void CancelTasks(const QSet<quint64> &ids);
|
||||||
|
|
||||||
qint64 SaveEmbeddedCoverAsync(const QString &song_filename, const QString &cover_filename);
|
quint64 SaveEmbeddedCoverAsync(const QString &song_filename, const QString &cover_filename);
|
||||||
qint64 SaveEmbeddedCoverAsync(const QString &song_filename, const QImage &image);
|
quint64 SaveEmbeddedCoverAsync(const QString &song_filename, const QImage &image);
|
||||||
qint64 SaveEmbeddedCoverAsync(const QString &song_filename, const QByteArray &image_data);
|
quint64 SaveEmbeddedCoverAsync(const QString &song_filename, const QByteArray &image_data);
|
||||||
qint64 SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QString &cover_filename);
|
quint64 SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QString &cover_filename);
|
||||||
qint64 SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QImage &image);
|
quint64 SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QImage &image);
|
||||||
qint64 SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QByteArray &image_data);
|
quint64 SaveEmbeddedCoverAsync(const QList<QUrl> &urls, const QByteArray &image_data);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void ExitFinished();
|
void ExitFinished();
|
||||||
|
|||||||
@@ -214,7 +214,7 @@ class AlbumCoverManager : public QMainWindow {
|
|||||||
QPushButton *abort_progress_;
|
QPushButton *abort_progress_;
|
||||||
int jobs_;
|
int jobs_;
|
||||||
|
|
||||||
QMultiMap<qint64, AlbumItem*> cover_save_tasks_;
|
QMultiMap<quint64, AlbumItem*> cover_save_tasks_;
|
||||||
QList<AlbumItem*> cover_save_tasks2_;
|
QList<AlbumItem*> cover_save_tasks2_;
|
||||||
|
|
||||||
QListWidgetItem *all_artists_;
|
QListWidgetItem *all_artists_;
|
||||||
|
|||||||
Reference in New Issue
Block a user