Hello community, here is the log from the commit of package clementine for openSUSE:Factory checked in at 2019-08-05 10:41:44 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/clementine (Old) and /work/SRC/openSUSE:Factory/.clementine.new.4126 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "clementine" Mon Aug 5 10:41:44 2019 rev:53 rq:720799 version:1.3.1+git20190724 Changes: -------- --- /work/SRC/openSUSE:Factory/clementine/clementine.changes 2019-07-23 22:38:04.026962842 +0200 +++ /work/SRC/openSUSE:Factory/.clementine.new.4126/clementine.changes 2019-08-05 10:42:13.319293035 +0200 @@ -1,0 +2,36 @@ +Sat Aug 3 07:02:03 UTC 2019 - Dave Plater <davejpla...@gmail.com> + +- Added patch from git 0001-Fix-memory-leaks-6376.patch, this patch + replaces the tagreader section in: + delete_the_allocated_memory_in_respective_destructors.patch. + +------------------------------------------------------------------- +Fri Jul 26 10:01:23 UTC 2019 - Dave Plater <davejpla...@gmail.com> + +- Update to qt5 branch snapshot 1.3.1+git20190724 +- Removed incorporated patches: + 0001-Improved-support-for-APEv2-tags.-6280.patch + 0001-Prevent-UI-hang-during-device-scan.-6291.patch + 0001-Fix-thread-safety-issues-when-initially-loading-devi.patch + 0001-Handle-case-where-a-lister-adds-a-device-before-load.patch + 0001-Fix-MoodbarPipeline-crash-on-gstreamer-error.patch + 0001-Fix-potential-use-of-streamer-element-after-deletion.patch + 0001-Free-decoder-bin-if-error-occurs-during-setup.patch + 0001-Fix-several-gstreamer-object-leaks.patch + 0001-Add-error-handling-path-for-async-song-loading.patch + 0001-Fixes-for-APE-filetype.patch + 0001-Simplify-some-statements.patch + 0001-Set-non-zero-minimum-for-fade-times.patch + 0001-Fix-a-number-of-potential-zero-value-field-values.patch + 0001-Introduce-limit-for-number-of-tag-client-processes.patch + 0001-Fix-crash-in-messagereply-6372.patch +- Refreshed old patches +- Added patch from git: + 0001-Fix-memory-leaks-in-database.patch + +------------------------------------------------------------------- +Thu Jul 25 13:04:21 UTC 2019 - Dave Plater <davejpla...@gmail.com> + +- Recommend projectM-data for visualizations. + +------------------------------------------------------------------- Old: ---- 0001-Add-error-handling-path-for-async-song-loading.patch 0001-Fix-MoodbarPipeline-crash-on-gstreamer-error.patch 0001-Fix-a-number-of-potential-zero-value-field-values.patch 0001-Fix-crash-in-messagereply-6372.patch 0001-Fix-potential-use-of-streamer-element-after-deletion.patch 0001-Fix-several-gstreamer-object-leaks.patch 0001-Fix-thread-safety-issues-when-initially-loading-devi.patch 0001-Fixes-for-APE-filetype.patch 0001-Free-decoder-bin-if-error-occurs-during-setup.patch 0001-Handle-case-where-a-lister-adds-a-device-before-load.patch 0001-Improved-support-for-APEv2-tags.-6280.patch 0001-Introduce-limit-for-number-of-tag-client-processes.patch 0001-Prevent-UI-hang-during-device-scan.-6291.patch 0001-Set-non-zero-minimum-for-fade-times.patch 0001-Simplify-some-statements.patch clementine-1.3.1+git20190713.tar.gz New: ---- 0001-Fix-memory-leaks-6376.patch 0001-Fix-memory-leaks-in-database.patch clementine-1.3.1+git20190724.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ clementine.spec ++++++ --- /var/tmp/diff_new_pack.4m3Fy9/_old 2019-08-05 10:42:14.011292955 +0200 +++ /var/tmp/diff_new_pack.4m3Fy9/_new 2019-08-05 10:42:14.011292955 +0200 @@ -16,7 +16,7 @@ # -%define rev c9800a4dc9a345bfa71e1096bbdc7ee0a34e1f28 +%define rev 75f18dab23f0842713a4200a7e362efd51b12e31 %bcond_without git @@ -28,7 +28,7 @@ %bcond_without qt5 Name: clementine -Version: 1.3.1+git20190713 +Version: 1.3.1+git20190724 Release: 0 Summary: A music player inspired by Amarok 1.4 License: GPL-3.0-or-later @@ -47,29 +47,10 @@ Patch4: clementine-hidden-systray-icon.patch # PATCH-FEATURE-OPENSUSE Patch6: use_system_qxtglobalshortcut.patch -#PATCH-FIX-GIT to 2019-03-26 -Patch7: 0001-Improved-support-for-APEv2-tags.-6280.patch -Patch8: 0001-Prevent-UI-hang-during-device-scan.-6291.patch -Patch9: 0001-Fix-thread-safety-issues-when-initially-loading-devi.patch -Patch10: 0001-Handle-case-where-a-lister-adds-a-device-before-load.patch -# Fixes [CVE] clementine #3309 -Patch11: 0001-Fix-MoodbarPipeline-crash-on-gstreamer-error.patch -Patch12: 0001-Fix-potential-use-of-streamer-element-after-deletion.patch -Patch13: 0001-Free-decoder-bin-if-error-occurs-during-setup.patch -Patch14: 0001-Fix-several-gstreamer-object-leaks.patch -#PATCH-FIX-GIT to 2019-04-27 -#Patch15: 0001-Fix-gst_buffer_unref-assertion-in-chromaprinter.patch -Patch16: 0001-Add-error-handling-path-for-async-song-loading.patch -Patch17: 0001-Fixes-for-APE-filetype.patch -Patch18: 0001-Simplify-some-statements.patch -Patch19: 0001-Set-non-zero-minimum-for-fade-times.patch -Patch20: 0001-Fix-a-number-of-potential-zero-value-field-values.patch -# From Jiri Slaby via boo#1141444 -Patch21: delete_the_allocated_memory_in_respective_destructors.patch -#PATCH-FIX-GIT from areading's pull, will maybe fix bugs -Patch22: 0001-Introduce-limit-for-number-of-tag-client-processes.patch -#PATCH-FIX-GIT cures issue#6372 -Patch23: 0001-Fix-crash-in-messagereply-6372.patch +#PATCH-FIX-GIT to 02-08-2019 +Patch20: 0001-Fix-memory-leaks-in-database.patch +Patch21: 0001-Fix-memory-leaks-6376.patch +Patch22: delete_the_allocated_memory_in_respective_destructors.patch BuildRequires: cmake BuildRequires: fdupes BuildRequires: freeglut-devel @@ -132,6 +113,8 @@ Requires: libtag1 >= 1.8 %if %{without qt5} Recommends: sni-qt +%else +Recommends: projectM-data %endif # clementine-kde was last used in openSUSE 12.2. # plasma_runner was dropped in Clementine 1.1.0. @@ -172,8 +155,10 @@ rm -rvf 3rdparty/SPMediaKeyTap %build +%ifarch %{arm} aarch64 +%define _lto_cflags %{nil} +%endif export CFLAGS="%{optflags} -fno-strict-aliasing -ggdb" -# -fsanitize=address export CXXFLAGS="$CFLAGS" %cmake \ -DBUILD_WERROR=OFF \ ++++++ 0001-Fix-memory-leaks-6376.patch ++++++ >From 546078c317fdbe27a3c99b5c110a4b3310d96d54 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge <jo...@jkvinge.net> Date: Fri, 2 Aug 2019 17:24:26 +0200 Subject: [PATCH] Fix memory leaks (#6376) --- ext/libclementine-tagreader/cloudstream.cpp | 5 ++--- ext/libclementine-tagreader/cloudstream.h | 9 ++++----- ext/libclementine-tagreader/tagreader.cpp | 12 ++---------- ext/libclementine-tagreader/tagreader.h | 11 +++++++---- src/playlist/playlistdelegates.cpp | 2 ++ src/playlist/playlistdelegates.h | 1 + 6 files changed, 18 insertions(+), 22 deletions(-) Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/ext/libclementine-tagreader/cloudstream.cpp =================================================================== --- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/ext/libclementine-tagreader/cloudstream.cpp 2019-07-24 12:51:48.000000000 +0200 +++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/ext/libclementine-tagreader/cloudstream.cpp 2019-08-03 08:53:22.803405670 +0200 @@ -33,15 +33,14 @@ static const int kTaglibSuffixCacheBytes } CloudStream::CloudStream(const QUrl& url, const QString& filename, - const long length, const QString& auth, - QNetworkAccessManager* network) + const long length, const QString& auth) : url_(url), filename_(filename), encoded_filename_(filename_.toUtf8()), length_(length), auth_(auth), cursor_(0), - network_(network), + network_(new QNetworkAccessManager), cache_(length), num_requests_(0) {} Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/ext/libclementine-tagreader/cloudstream.h =================================================================== --- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/ext/libclementine-tagreader/cloudstream.h 2019-07-24 12:51:48.000000000 +0200 +++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/ext/libclementine-tagreader/cloudstream.h 2019-08-03 08:53:22.803405670 +0200 @@ -18,21 +18,20 @@ #ifndef GOOGLEDRIVESTREAM_H #define GOOGLEDRIVESTREAM_H -#include <QObject> #include <QList> +#include <QNetworkAccessManager> +#include <QObject> #include <QSslError> #include <QUrl> #include <google/sparsetable> #include <taglib/tiostream.h> -class QNetworkAccessManager; - class CloudStream : public QObject, public TagLib::IOStream { Q_OBJECT public: CloudStream(const QUrl& url, const QString& filename, const long length, - const QString& auth, QNetworkAccessManager* network); + const QString& auth); // Taglib::IOStream virtual TagLib::FileName name() const; @@ -73,7 +72,7 @@ class CloudStream : public QObject, publ const QString auth_; int cursor_; - QNetworkAccessManager* network_; + std::unique_ptr<QNetworkAccessManager> network_; google::sparsetable<char> cache_; int num_requests_; Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/ext/libclementine-tagreader/tagreader.cpp =================================================================== --- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/ext/libclementine-tagreader/tagreader.cpp 2019-07-24 12:51:48.000000000 +0200 +++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/ext/libclementine-tagreader/tagreader.cpp 2019-08-03 08:53:22.803405670 +0200 @@ -22,7 +22,6 @@ #include <QCoreApplication> #include <QDateTime> #include <QFileInfo> -#include <QNetworkAccessManager> #include <QTextCodec> #include <QUrl> #include <QVector> @@ -77,12 +76,6 @@ #define NumberToASFAttribute(x) \ TagLib::ASF::Attribute(QStringToTaglibString(QString::number(x))) -class FileRefFactory { - public: - virtual ~FileRefFactory() {} - virtual TagLib::FileRef* GetFileRef(const QString& filename) = 0; -}; - class TagLibFileRefFactory : public FileRefFactory { public: virtual TagLib::FileRef* GetFileRef(const QString& filename) { @@ -122,7 +115,6 @@ const char* kASF_OriginalYear_ID = "WM/O TagReader::TagReader() : factory_(new TagLibFileRefFactory), - network_(new QNetworkAccessManager), kEmbeddedCover("(embedded)") {} void TagReader::ReadFile(const QString& filename, @@ -1332,8 +1324,8 @@ bool TagReader::ReadCloudFile(const QUrl pb::tagreader::SongMetadata* song) const { qLog(Debug) << "Loading tags from" << title; - std::unique_ptr<CloudStream> stream(new CloudStream( - download_url, title, size, authorisation_header, network_)); + std::unique_ptr<CloudStream> stream( + new CloudStream(download_url, title, size, authorisation_header)); stream->Precache(); std::unique_ptr<TagLib::File> tag; if (mime_type == "audio/mpeg" && Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/ext/libclementine-tagreader/tagreader.h =================================================================== --- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/ext/libclementine-tagreader/tagreader.h 2019-07-24 12:51:48.000000000 +0200 +++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/ext/libclementine-tagreader/tagreader.h 2019-08-03 08:53:22.803405670 +0200 @@ -21,11 +21,11 @@ #include <QByteArray> #include <taglib/xiphcomment.h> +#include <memory> #include "config.h" #include "tagreadermessages.pb.h" -class QNetworkAccessManager; class QString; class QTextCodec; class QUrl; @@ -40,7 +40,11 @@ class PopularimeterFrame; } } -class FileRefFactory; +class FileRefFactory { + public: + virtual ~FileRefFactory() {} + virtual TagLib::FileRef* GetFileRef(const QString& filename) = 0; +}; /** * This class holds all useful methods to read and write tags from/to files. @@ -119,8 +123,7 @@ class TagReader { static TagLib::ID3v2::PopularimeterFrame* GetPOPMFrameFromTag( TagLib::ID3v2::Tag* tag); - FileRefFactory* factory_; - QNetworkAccessManager* network_; + std::unique_ptr<FileRefFactory> factory_; const std::string kEmbeddedCover; }; Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/playlist/playlistdelegates.cpp =================================================================== --- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/src/playlist/playlistdelegates.cpp 2019-07-24 12:51:48.000000000 +0200 +++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/playlist/playlistdelegates.cpp 2019-08-03 08:53:22.803405670 +0200 @@ -401,6 +401,8 @@ TagCompleter::TagCompleter(LibraryBacken future); } +TagCompleter::~TagCompleter() { model()->deleteLater(); } + void TagCompleter::ModelReady(QFuture<TagCompletionModel*> future) { TagCompletionModel* model = future.result(); setModel(model); Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/playlist/playlistdelegates.h =================================================================== --- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/src/playlist/playlistdelegates.h 2019-07-24 12:51:48.000000000 +0200 +++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/playlist/playlistdelegates.h 2019-08-03 08:53:22.803405670 +0200 @@ -157,6 +157,7 @@ class TagCompleter : public QCompleter { public: TagCompleter(LibraryBackend* backend, Playlist::Column column, QLineEdit* editor); + ~TagCompleter(); private slots: void ModelReady(QFuture<TagCompletionModel*> future); ++++++ 0001-Fix-memory-leaks-in-database.patch ++++++ >From 8d921c15beb2c5d5489f3eadd0ee2021ea5ca311 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge <jo...@jkvinge.net> Date: Thu, 25 Jul 2019 19:02:43 +0200 Subject: [PATCH] Fix memory leaks in database --- src/core/database.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/core/database.cpp =================================================================== --- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/src/core/database.cpp 2019-07-26 11:44:22.296926526 +0200 +++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/core/database.cpp 2019-07-26 11:45:52.908508307 +0200 @@ -262,7 +262,7 @@ QSqlDatabase Database::Connect() { } // Find Sqlite3 functions in the Qt plugin. - StaticInit(); + if (!sFTSTokenizer) StaticInit(); { ++++++ clementine-1.3.1+git20190713.tar.gz -> clementine-1.3.1+git20190724.tar.gz ++++++ /work/SRC/openSUSE:Factory/clementine/clementine-1.3.1+git20190713.tar.gz /work/SRC/openSUSE:Factory/.clementine.new.4126/clementine-1.3.1+git20190724.tar.gz differ: char 13, line 1 ++++++ clementine-hidden-systray-icon.patch ++++++ --- /var/tmp/diff_new_pack.4m3Fy9/_old 2019-08-05 10:42:14.051292951 +0200 +++ /var/tmp/diff_new_pack.4m3Fy9/_new 2019-08-05 10:42:14.055292950 +0200 @@ -1,7 +1,7 @@ -Index: Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b/dist/clementine.desktop +Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/dist/clementine.desktop =================================================================== ---- Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b.orig/dist/clementine.desktop 2019-02-13 06:02:56.000000000 +0200 -+++ Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b/dist/clementine.desktop 2019-03-27 09:08:14.514962063 +0200 +--- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/dist/clementine.desktop 2019-07-24 12:51:48.000000000 +0200 ++++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/dist/clementine.desktop 2019-07-26 11:41:32.638186156 +0200 @@ -36,7 +36,7 @@ TryExec=clementine Icon=clementine Terminal=false @@ -11,10 +11,10 @@ MimeType=application/ogg;application/x-ogg;application/x-ogm-audio;audio/aac;audio/mp4;audio/mpeg;audio/mpegurl;audio/ogg;audio/vnd.rn-realaudio;audio/vorbis;audio/x-flac;audio/x-mp3;audio/x-mpeg;audio/x-mpegurl;audio/x-ms-wma;audio/x-musepack;audio/x-oggflac;audio/x-pn-realaudio;audio/x-scpls;audio/x-speex;audio/x-vorbis;audio/x-vorbis+ogg;audio/x-wav;video/x-ms-asf;x-content/audio-player;x-scheme-handler/zune;x-scheme-handler/itpc;x-scheme-handler/itms;x-scheme-handler/feed; Actions=Play;Pause;Stop;StopAfterCurrent;Previous;Next; -Index: Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b/src/ui/mainwindow.cpp +Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/ui/mainwindow.cpp =================================================================== ---- Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b.orig/src/ui/mainwindow.cpp 2019-02-13 06:02:56.000000000 +0200 -+++ Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b/src/ui/mainwindow.cpp 2019-03-27 09:08:14.514962063 +0200 +--- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/src/ui/mainwindow.cpp 2019-07-24 12:51:48.000000000 +0200 ++++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/ui/mainwindow.cpp 2019-07-26 11:41:32.638186156 +0200 @@ -1041,6 +1041,7 @@ MainWindow::MainWindow(Application* app, if (hidden && (!QSystemTrayIcon::isSystemTrayAvailable() || !tray_icon_ || !tray_icon_->IsVisible())) { ++++++ clementine-moodbar-fpic.patch ++++++ --- /var/tmp/diff_new_pack.4m3Fy9/_old 2019-08-05 10:42:14.059292950 +0200 +++ /var/tmp/diff_new_pack.4m3Fy9/_new 2019-08-05 10:42:14.063292949 +0200 @@ -1,7 +1,7 @@ -Index: Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b/gst/moodbar/CMakeLists.txt +Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/gst/moodbar/CMakeLists.txt =================================================================== ---- Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b.orig/gst/moodbar/CMakeLists.txt 2019-02-13 06:02:56.000000000 +0200 -+++ Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b/gst/moodbar/CMakeLists.txt 2019-03-27 09:08:06.882659408 +0200 +--- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/gst/moodbar/CMakeLists.txt 2019-07-24 12:51:48.000000000 +0200 ++++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/gst/moodbar/CMakeLists.txt 2019-07-26 11:40:41.784156710 +0200 @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 2.8.11) ++++++ clementine-udisks-headers.patch ++++++ --- /var/tmp/diff_new_pack.4m3Fy9/_old 2019-08-05 10:42:14.071292948 +0200 +++ /var/tmp/diff_new_pack.4m3Fy9/_new 2019-08-05 10:42:14.071292948 +0200 @@ -1,7 +1,7 @@ -Index: Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b/src/CMakeLists.txt +Index: Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/CMakeLists.txt =================================================================== ---- Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b.orig/src/CMakeLists.txt 2019-02-13 06:02:56.000000000 +0200 -+++ Clementine-36cc5b82f4daf5c2d4e93dc8072665e5a3ca622b/src/CMakeLists.txt 2019-03-27 09:07:45.077792580 +0200 +--- Clementine-75f18dab23f0842713a4200a7e362efd51b12e31.orig/src/CMakeLists.txt 2019-07-24 12:51:48.000000000 +0200 ++++ Clementine-75f18dab23f0842713a4200a7e362efd51b12e31/src/CMakeLists.txt 2019-07-26 11:40:19.715274647 +0200 @@ -965,6 +965,8 @@ if(UNIX AND HAVE_DBUS) list(APPEND HEADERS ${CMAKE_CURRENT_BINARY_DIR}/dbus/avahientrygroup.h) list(APPEND SOURCES ${CMAKE_CURRENT_BINARY_DIR}/dbus/avahientrygroup.cpp) ++++++ delete_the_allocated_memory_in_respective_destructors.patch ++++++ ++++ 1295 lines (skipped) ++++ between /work/SRC/openSUSE:Factory/clementine/delete_the_allocated_memory_in_respective_destructors.patch ++++ and /work/SRC/openSUSE:Factory/.clementine.new.4126/delete_the_allocated_memory_in_respective_destructors.patch