public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/amarok] epel10: 2.7.0-4
@ 2026-07-06 18:05 Rex Dieter
  0 siblings, 0 replies; only message in thread
From: Rex Dieter @ 2026-07-06 18:05 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/amarok
            Branch : epel10
            Commit : 6c73f05c1232c5ac041d48725928ae9bad50a428
            Author : Rex Dieter <rdieter@fedoraproject.org>
            Date   : 2013-05-13T09:02:41-05:00
            Stats  : +189/-1 in 5 file(s)
            URL    : https://src.fedoraproject.org/rpms/amarok/c/6c73f05c1232c5ac041d48725928ae9bad50a428?branch=epel10

            Log:
            2.7.0-4

- backport a few upstream fixes, in particular...
- include upstream workaround for qtwebkit/wikipedia related crashes

---
diff --git a/0057-Fix-crashed-when-dynamic-playlist-based-on-last.fm-i.patch b/0057-Fix-crashed-when-dynamic-playlist-based-on-last.fm-i.patch
new file mode 100644
index 0000000..a3132e7
--- /dev/null
+++ b/0057-Fix-crashed-when-dynamic-playlist-based-on-last.fm-i.patch
@@ -0,0 +1,37 @@
+From 95e694452be6c040bb8040f39b260c97b214f1c0 Mon Sep 17 00:00:00 2001
+From: Ralf Engels <ralf-engels@gmx.de>
+Date: Wed, 6 Feb 2013 01:02:45 +0100
+Subject: [PATCH 057/289] Fix crashed when dynamic playlist based on last.fm
+ is aborted
+
+Since the bias solver runs in a different thread care must be taken
+for signals.
+
+BUG: 314243
+FIXED-IN: 2.8
+---
+ src/browsers/BrowserMessageArea.cpp | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/browsers/BrowserMessageArea.cpp b/src/browsers/BrowserMessageArea.cpp
+index 0a2b391..dc36257 100644
+--- a/src/browsers/BrowserMessageArea.cpp
++++ b/src/browsers/BrowserMessageArea.cpp
+@@ -117,11 +117,11 @@ BrowserMessageArea::newProgressOperation( QObject *sender, const QString &text,
+     newBar->setDescription( text );
+     newBar->setMaximum( maximum );
+     connect( sender, SIGNAL(destroyed( QObject * )), m_progressBar,
+-             SLOT(endProgressOperation( QObject * )) );
++             SLOT(endProgressOperation( QObject * )), Qt::QueuedConnection );
+     connect( sender, SIGNAL(endProgressOperation( QObject * )), m_progressBar,
+-             SLOT(endProgressOperation( QObject * )) );
++             SLOT(endProgressOperation( QObject * )), Qt::QueuedConnection );
+     connect( sender, SIGNAL(incrementProgress()), m_progressBar,
+-             SLOT(slotIncrementProgress()) );
++             SLOT(slotIncrementProgress()), Qt::QueuedConnection );
+     connect( sender, SIGNAL(totalSteps( int )), newBar, SLOT(slotTotalSteps( int )) );
+     newBar->setAbortSlot( obj, slot, type );
+     m_progressBar->addProgressBar( newBar, sender );
+-- 
+1.7.11.7
+

diff --git a/0074-Fix-Amarok-crashes-by-putting-a-broadcast-in-the-pla.patch b/0074-Fix-Amarok-crashes-by-putting-a-broadcast-in-the-pla.patch
new file mode 100644
index 0000000..e376867
--- /dev/null
+++ b/0074-Fix-Amarok-crashes-by-putting-a-broadcast-in-the-pla.patch
@@ -0,0 +1,37 @@
+From 2d6f48ebe3dc4f91a27eb95c8fdb282decd283e9 Mon Sep 17 00:00:00 2001
+From: Ralf Engels <ralf-engels@gmx.de>
+Date: Tue, 12 Feb 2013 15:25:06 +0100
+Subject: [PATCH 074/289] Fix:  Amarok crashes by putting a broadcast in the
+ playlist
+
+BUG: 313718
+FIXED-IN: 2.8
+---
+ src/core-impl/playlists/types/file/pls/PLSPlaylist.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/core-impl/playlists/types/file/pls/PLSPlaylist.cpp b/src/core-impl/playlists/types/file/pls/PLSPlaylist.cpp
+index 3ba154a..8fe4b51 100644
+--- a/src/core-impl/playlists/types/file/pls/PLSPlaylist.cpp
++++ b/src/core-impl/playlists/types/file/pls/PLSPlaylist.cpp
+@@ -247,7 +247,7 @@ PLSPlaylist::loadPls( QTextStream &textStream )
+             m_tracks << Meta::TrackPtr( proxyTrack.data() );
+             continue;
+         }
+-        if( (*i).contains(regExp_Title) )
++        if( (*i).contains(regExp_Title) && proxyTrack )
+         {
+             // Have a "Title#=XYZ" line.
+             index = loadPls_extractIndex(*i);
+@@ -257,7 +257,7 @@ PLSPlaylist::loadPls( QTextStream &textStream )
+             proxyTrack->setName( tmp );
+             continue;
+         }
+-        if( (*i).contains( regExp_Length ) )
++        if( (*i).contains( regExp_Length ) && proxyTrack )
+         {
+             // Have a "Length#=XYZ" line.
+             index = loadPls_extractIndex(*i);
+-- 
+1.7.11.7
+

diff --git a/0221-MySqlEmbeddedStorage-don-t-use-QString-toAscii-fix-b.patch b/0221-MySqlEmbeddedStorage-don-t-use-QString-toAscii-fix-b.patch
new file mode 100644
index 0000000..1e58ce7
--- /dev/null
+++ b/0221-MySqlEmbeddedStorage-don-t-use-QString-toAscii-fix-b.patch
@@ -0,0 +1,46 @@
+From 7b8266baf2f0c3afac70b8cbbc561c473a6f1322 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Mat=C4=9Bj=20Laitl?= <matej@laitl.cz>
+Date: Tue, 9 Apr 2013 22:40:05 +0200
+Subject: [PATCH 221/289] MySqlEmbeddedStorage: don't use QString::toAscii(),
+ fix bug 313914
+
+It is 2013. We have more characters than 128.
+
+BUGFIXES:
+ * Fix inability to create database when home directory contains
+   non-ASCII characters.
+
+BUG: 313914
+FIXED-IN: 2.8
+---
+ ChangeLog                                                           | 2 ++
+ .../collections/db/sql/mysqlecollection/MySqlEmbeddedStorage.cpp    | 6 +++---
+ 2 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/core-impl/collections/db/sql/mysqlecollection/MySqlEmbeddedStorage.cpp b/src/core-impl/collections/db/sql/mysqlecollection/MySqlEmbeddedStorage.cpp
+index f48ed4a..0233498 100644
+--- a/src/core-impl/collections/db/sql/mysqlecollection/MySqlEmbeddedStorage.cpp
++++ b/src/core-impl/collections/db/sql/mysqlecollection/MySqlEmbeddedStorage.cpp
+@@ -60,7 +60,7 @@ MySqlEmbeddedStorage::MySqlEmbeddedStorage( const QString &storageLocation )
+         }
+         QTextStream out( &df );
+         out << "[embedded]" << endl;
+-        out << "datadir = " << databaseDir.toAscii().data() << endl;
++        out << "datadir = " << databaseDir.toLocal8Bit() << endl;
+         // CAUTION: if we ever change the table type we will need to fix a number of MYISAM specific
+         // functions, such as FULLTEXT indexing.
+         out << "default-storage-engine = MyISAM" << endl;
+@@ -81,8 +81,8 @@ MySqlEmbeddedStorage::MySqlEmbeddedStorage( const QString &storageLocation )
+         dir.mkpath( "." );
+     }
+ 
+-    setenv( "MYSQL_HOME", storagePath.toAscii().data(), 1 );
+-    setenv( "DEFAULT_HOME_ENV", storagePath.toAscii().data(), 1 );
++    setenv( "MYSQL_HOME", storagePath.toLocal8Bit().data(), 1 );
++    setenv( "DEFAULT_HOME_ENV", storagePath.toLocal8Bit().data(), 1 );
+     char *args[] = { (char*) "amarok" };
+     if( mysql_library_init( 1 , args, 0 ) != 0 )
+     {
+-- 
+1.7.11.7
+

diff --git a/0263-Fix-crashes-on-track-change-both-with-Phonon-GStream.patch b/0263-Fix-crashes-on-track-change-both-with-Phonon-GStream.patch
new file mode 100644
index 0000000..215e747
--- /dev/null
+++ b/0263-Fix-crashes-on-track-change-both-with-Phonon-GStream.patch
@@ -0,0 +1,55 @@
+From d13bd61842627ffb2382b5d59a020ea7a5124ca5 Mon Sep 17 00:00:00 2001
+From: Mark Kretschmann <kretschmann@kde.org>
+Date: Wed, 8 May 2013 12:29:52 +0200
+Subject: [PATCH 263/289] Fix crashes on track change (both with
+ Phonon-GStreamer and Phonon-VLC).
+
+What happened:
+
+The Wikipedia applet uses QtWebKit for HTML rendering. On
+Linux, QtWebKit uses GStreamer for media playback. Turns out that this crashes
+with a high probability whenever an <audio> tag is present on a web page. As
+music artists' pages often contain audio snippets in Vorbis format, it crashed
+a lot when Amarok's applet rendered a page.
+
+The fix:
+
+Removing all audio tags from Wikipedia pages before rendering them in our applet.
+Of course, the real fix would have to be done upstream. But until that happens, our
+workaround here fixes a shitload of crashes.
+
+We might want to do a 2.7.1 release for Linux, with this patch.
+
+CCMAIL: amarok-devel@kde.org
+---
+ src/context/engines/wikipedia/WikipediaEngine.cpp | 14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/src/context/engines/wikipedia/WikipediaEngine.cpp b/src/context/engines/wikipedia/WikipediaEngine.cpp
+index 94910e7..0692b8d 100644
+--- a/src/context/engines/wikipedia/WikipediaEngine.cpp
++++ b/src/context/engines/wikipedia/WikipediaEngine.cpp
+@@ -818,6 +818,20 @@ WikipediaEnginePrivate::wikiParse( QString &wiki )
+         }
+     }
+ 
++    { // remove <audio> tags (can lead to crashes in QtWebKit)
++        const QString tag    = QLatin1String("<audio");
++        const QString tagEnd = QLatin1String("</audio>");
++        const int tagEndSize = tagEnd.size();
++        int matchIndex = 0;
++        QStringMatcher tagMatcher( tag );
++        while( (matchIndex = tagMatcher.indexIn(wiki, matchIndex)) != -1 )
++        {
++            const int nToTagEnd = wiki.indexOf( tagEnd, matchIndex ) - matchIndex;
++            QStringRef tagRef = wiki.midRef( matchIndex, nToTagEnd + tagEndSize );
++            wiki.remove( tagRef.toString() );
++        }
++    }
++
+     // Adding back style and license information
+     wiki = QLatin1String("<div id=\"bodyContent\"") + wiki;
+     wiki += copyright;
+-- 
+1.7.11.7
+

diff --git a/amarok.spec b/amarok.spec
index 2fd3494..b77d53e 100644
--- a/amarok.spec
+++ b/amarok.spec
@@ -2,7 +2,7 @@
 Name:    amarok
 Summary: Media player
 Version: 2.7.0
-Release: 3%{?dist}
+Release: 4%{?dist}
 
 # KDE e.V. may determine that future GPL versions are accepted
 License: GPLv2 or GPLv3
@@ -22,6 +22,10 @@ Patch0:  amarok-2.7.0-onlinedoc.patch
 ## upstreamable patches
 
 ## upstream patches
+Patch0057: 0057-Fix-crashed-when-dynamic-playlist-based-on-last.fm-i.patch
+Patch0074: 0074-Fix-Amarok-crashes-by-putting-a-broadcast-in-the-pla.patch
+Patch0221: 0221-MySqlEmbeddedStorage-don-t-use-QString-toAscii-fix-b.patch
+Patch0263: 0263-Fix-crashes-on-track-change-both-with-Phonon-GStream.patch
 
 BuildRequires: curl-devel
 BuildRequires: desktop-file-utils
@@ -97,6 +101,11 @@ BuildArch: noarch
 
 %patch0 -p1 -b .onlinedoc
 
+%patch0057 -p1 -b .0057
+%patch0074 -p1 -b .0074
+%patch0221 -p1 -b .0221
+%patch0263 -p1 -b .0263
+
 
 %build
 mkdir -p %{_target_platform}
@@ -185,6 +194,10 @@ fi
 
 
 %changelog
+* Mon May 13 2013 Rex Dieter <rdieter@fedoraproject.org> - 2.7.0-4
+- backport a few upstream fixes, in particular...
+- include upstream workaround for qtwebkit/wikipedia related crashes
+
 * Sat Feb 02 2013 Rex Dieter <rdieter@fedoraproject.org> 2.7.0-3
 - rebuild (mariadb)
 

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-07-06 18:05 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-07-06 18:05 [rpms/amarok] epel10: 2.7.0-4 Rex Dieter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox