diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-11-27 20:57:53 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-11-27 20:57:53 +0000 |
| commit | dc8dac141f57b50a9316131c8491e72b488a2d2c (patch) | |
| tree | 8c3c7e05412b304258d4aa19014c3321897332a6 /src/plugins/Input/cue | |
| parent | 6f42fc16aa3b35750598e4322c3dbd1792e66e7d (diff) | |
| download | qmmp-dc8dac141f57b50a9316131c8491e72b488a2d2c.tar.gz qmmp-dc8dac141f57b50a9316131c8491e72b488a2d2c.tar.bz2 qmmp-dc8dac141f57b50a9316131c8491e72b488a2d2c.zip | |
fixed cue parsing
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@642 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Input/cue')
| -rw-r--r-- | src/plugins/Input/cue/cueparser.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/plugins/Input/cue/cueparser.cpp b/src/plugins/Input/cue/cueparser.cpp index 768203edc..440c5fb54 100644 --- a/src/plugins/Input/cue/cueparser.cpp +++ b/src/plugins/Input/cue/cueparser.cpp @@ -19,8 +19,6 @@ ***************************************************************************/ #include <QFile> -#include <QFileInfo> -#include <QRegExp> #include <QDir> #include <QSettings> #include <QTextStream> @@ -43,6 +41,7 @@ CUEParser::CUEParser(const QString &fileName) QSettings settings(QDir::homePath()+"/.qmmp/qmmprc", QSettings::IniFormat); QTextCodec *codec = QTextCodec::codecForName(settings.value("CUE/encoding","ISO-8859-1").toByteArray ()); textStream.setCodec(codec); + QString artist; while (!textStream.atEnd()) { QString line = textStream.readLine().trimmed(); @@ -58,7 +57,10 @@ CUEParser::CUEParser(const QString &fileName) else if (words[0] == "PERFORMER") { if (m_infoList.isEmpty()) + { + artist = words[1]; continue; + } else m_infoList.last().setMetaData(Qmmp::ARTIST, words[1]); @@ -108,12 +110,14 @@ CUEParser::CUEParser(const QString &fileName) else m_infoList.last().setLength(0); - for(int i = 0; i < m_infoList.size(); ++i) + for (int i = 0; i < m_infoList.size(); ++i) { m_infoList[i].setMetaData(Qmmp::ALBUM, album); m_infoList[i].setMetaData(Qmmp::GENRE, genre); m_infoList[i].setMetaData(Qmmp::YEAR, date); m_infoList[i].setMetaData(Qmmp::COMMENT, comment); + if (!m_infoList[i].metaData().count(Qmmp::ARTIST) && !artist.isEmpty()) + m_infoList[i].setMetaData(Qmmp::ARTIST, artist); } file.close(); } |
