summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound')
-rw-r--r--media-sound/qmmp/ChangeLog9
-rw-r--r--media-sound/qmmp/files/qmmp-0.2.3-fix-playlist-download.patch73
-rw-r--r--media-sound/qmmp/files/qmmp-0.2.3-fix-xspf.patch32
-rw-r--r--media-sound/qmmp/qmmp-0.2.3-r1.ebuild78
4 files changed, 191 insertions, 1 deletions
diff --git a/media-sound/qmmp/ChangeLog b/media-sound/qmmp/ChangeLog
index b2bae9f9b07d..720d18cd2a99 100644
--- a/media-sound/qmmp/ChangeLog
+++ b/media-sound/qmmp/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for media-sound/qmmp
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/qmmp/ChangeLog,v 1.2 2009/01/02 19:40:11 yngwin Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-sound/qmmp/ChangeLog,v 1.3 2009/02/21 11:49:43 hwoarang Exp $
+
+*qmmp-0.2.3-r1 (21 Feb 2009)
+
+ 21 Feb 2009; Markos Chandras <hwoarang@gentoo.org>
+ +files/qmmp-0.2.3-fix-playlist-download.patch,
+ +files/qmmp-0.2.3-fix-xspf.patch, +qmmp-0.2.3-r1.ebuild:
+ revbump, fixes bug #257712, thanks to Sebastian Pipping
02 Jan 2009; Ben de Groot <yngwin@gentoo.org> qmmp-0.2.3.ebuild:
Let homepage refer to English version
diff --git a/media-sound/qmmp/files/qmmp-0.2.3-fix-playlist-download.patch b/media-sound/qmmp/files/qmmp-0.2.3-fix-playlist-download.patch
new file mode 100644
index 000000000000..a2921d541a28
--- /dev/null
+++ b/media-sound/qmmp/files/qmmp-0.2.3-fix-playlist-download.patch
@@ -0,0 +1,73 @@
+Index: src/ui/addurldialog.h
+===================================================================
+--- old/src/ui/addurldialog.h (revision 774)
++++ new/src/ui/addurldialog.h (working copy)
+@@ -1,5 +1,5 @@
+ /***************************************************************************
+- * Copyright (C) 2006-2008 by Ilya Kotov *
++ * Copyright (C) 2006-2009 by Ilya Kotov *
+ * forkotov02@hotmail.ru *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+@@ -48,8 +48,7 @@
+ virtual void accept();
+
+ private slots:
+- void processResponse(int, bool);
+- void readResponse(const QHttpResponseHeader&);
++ void readResponse(bool);
+
+ private:
+ void setModel(PlayListModel*);
+Index: src/ui/addurldialog.cpp
+===================================================================
+--- old/src/ui/addurldialog.cpp (revision 774)
++++ new/src/ui/addurldialog.cpp (working copy)
+@@ -1,5 +1,5 @@
+ /***************************************************************************
+- * Copyright (C) 2006-2008 by Ilya Kotov *
++ * Copyright (C) 2006-2009 by Ilya Kotov *
+ * forkotov02@hotmail.ru *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+@@ -39,9 +39,7 @@
+ m_history = settings.value("URLDialog/history").toStringList();
+ urlComboBox->addItems(m_history);
+ m_http = new QHttp(this);
+- connect(m_http, SIGNAL(requestFinished (int, bool)), SLOT(processResponse(int, bool)));
+- connect(m_http, SIGNAL(readyRead (const QHttpResponseHeader&)),
+- SLOT(readResponse(const QHttpResponseHeader&)));
++ connect(m_http, SIGNAL(done (bool)), SLOT(readResponse(bool)));
+
+ //use global proxy settings
+ if (settings.value ("Proxy/use_proxy", FALSE).toBool())
+@@ -104,23 +102,16 @@
+ QDialog::accept();
+ }
+
+-void AddUrlDialog::processResponse(int, bool error)
++void AddUrlDialog::readResponse(bool error)
+ {
+ if (error)
+- {
+ QMessageBox::critical (this, tr("Error"), m_http->errorString ());
+- QDialog::accept();
+- }
+-}
+-
+-void AddUrlDialog::readResponse(const QHttpResponseHeader&)
+-{
+- QString s = urlComboBox->currentText();
+- PlaylistFormat* prs = PlaylistParser::instance()->findByPath(s);
+- if (prs)
++ else
+ {
+- m_model->addFiles(prs->decode(m_http->readAll()));
+- return;
++ QString s = urlComboBox->currentText();
++ PlaylistFormat* prs = PlaylistParser::instance()->findByPath(s);
++ if (prs)
++ m_model->addFiles(prs->decode(m_http->readAll()));
+ }
+ QDialog::accept();
+ }
diff --git a/media-sound/qmmp/files/qmmp-0.2.3-fix-xspf.patch b/media-sound/qmmp/files/qmmp-0.2.3-fix-xspf.patch
new file mode 100644
index 000000000000..7158c6420c92
--- /dev/null
+++ b/media-sound/qmmp/files/qmmp-0.2.3-fix-xspf.patch
@@ -0,0 +1,32 @@
+--- old/src/plugins/PlaylistFormats/xspf/xspfplaylistformat.cpp (revision 736)
++++ new/src/plugins/PlaylistFormats/xspf/xspfplaylistformat.cpp (revision 737)
+@@ -57,11 +57,13 @@
+
+ while (!child.isNull())
+ {
+- QString str = QUrl(child.firstChildElement("location").text()).toString(QUrl::RemoveScheme);
+- out << str;
++ QUrl url (child.firstChildElement("location").text());
++ if (url.scheme() == "file") //remove scheme for local files only
++ out << url.toString(QUrl::RemoveScheme);
++ else
++ out << url.toString();
+ child = child.nextSiblingElement();
+ }
+-
+ return out;
+ }
+
+@@ -87,7 +89,11 @@
+ QDomElement track = doc.createElement("track");
+
+ QDomElement ch = doc.createElement("location");
+- QDomText text = doc.createTextNode(/*QString("file://") + */QFileInfo(f->path()).absoluteFilePath());
++ QDomText text;
++ if (f->path().contains("://"))
++ text = doc.createTextNode(f->path());
++ else //append protocol
++ text = doc.createTextNode(QString("file://") + QFileInfo(f->path()).absoluteFilePath());
+ ch.appendChild(text);
+ track.appendChild(ch);
+
diff --git a/media-sound/qmmp/qmmp-0.2.3-r1.ebuild b/media-sound/qmmp/qmmp-0.2.3-r1.ebuild
new file mode 100644
index 000000000000..d49ecf656c39
--- /dev/null
+++ b/media-sound/qmmp/qmmp-0.2.3-r1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-sound/qmmp/qmmp-0.2.3-r1.ebuild,v 1.1 2009/02/21 11:49:43 hwoarang Exp $
+
+EAPI="2"
+
+inherit cmake-utils
+
+DESCRIPTION="Qt4-based audio player with winamp/xmms skins support"
+HOMEPAGE="http://qmmp.ylsoftware.com/index_en.php"
+SRC_URI="http://qmmp.ylsoftware.com/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+alsa +dbus ffmpeg flac jack libsamplerate +mad modplug musepack oss
+ pulseaudio scrobbler sndfile +vorbis wavpack"
+
+RDEPEND="|| ( x11-libs/qt-gui:4 =x11-libs/qt-4.3*:4 )
+ media-libs/taglib
+ alsa? ( media-libs/alsa-lib )
+ dbus? ( sys-apps/dbus )
+ flac? ( media-libs/flac )
+ libsamplerate? ( media-libs/libsamplerate )
+ mad? ( media-libs/libmad )
+ musepack? ( >=media-libs/libmpcdec-1.2.5 )
+ modplug? ( >=media-libs/libmodplug-0.8.4 )
+ vorbis? ( media-libs/libvorbis
+ media-libs/libogg )
+ jack? ( media-sound/jack-audio-connection-kit
+ media-libs/libsamplerate )
+ ffmpeg? ( media-video/ffmpeg )
+ pulseaudio? ( >=media-sound/pulseaudio-0.9.9 )
+ wavpack? ( media-sound/wavpack )
+ scrobbler? ( net-misc/curl )
+ sndfile? ( media-libs/libsndfile )"
+DEPEND="${RDEPEND}
+ >=dev-util/cmake-2.4.8"
+
+DOCS="AUTHORS ChangeLog README"
+
+qmmp_use_enable() {
+ # uses completely non standard cmake options...
+ if use ${1}; then
+ echo "-DUSE_${2}:BOOL=TRUE"
+ else
+ echo "-DUSE_${2}:BOOL=FALSE"
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/qmmp-0.2.3-fix-playlist-download.patch"
+ epatch "${FILESDIR}/qmmp-0.2.3-fix-xspf.patch"
+}
+
+src_compile() {
+ # needs to be built in source tree
+ CMAKE_IN_SOURCE_BUILD=1
+
+ mycmakeargs="${mycmakeargs}
+ $(qmmp_use_enable alsa ALSA)
+ $(qmmp_use_enable dbus DBUS)
+ $(qmmp_use_enable ffmpeg FFMPEG)
+ $(qmmp_use_enable flac FLAC)
+ $(qmmp_use_enable jack JACK)
+ $(qmmp_use_enable mad MAD)
+ $(qmmp_use_enable modplug MODPLUG)
+ $(qmmp_use_enable musepack MPC)
+ $(qmmp_use_enable oss OSS)
+ $(qmmp_use_enable pulseaudio PULSE)
+ $(qmmp_use_enable scrobbler SCROBBLER)
+ $(qmmp_use_enable sndfile SNDFILE)
+ $(qmmp_use_enable libsamplerate SRC)
+ $(qmmp_use_enable vorbis VORBIS)
+ $(qmmp_use_enable wavpack WAVPACK)"
+
+ cmake-utils_src_compile
+}