diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-10-19 17:53:31 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-10-19 17:53:31 +0000 |
| commit | dbcead0fd3f3b7090a8f5b0fe07e9345620324e6 (patch) | |
| tree | d60c599c4ff9a503c5b3c63c90a2abfbef6c254b /src | |
| parent | 5b203f2aa6171045e2a9db0d296cbd504de2a3b2 (diff) | |
| download | qmmp-dbcead0fd3f3b7090a8f5b0fe07e9345620324e6.tar.gz qmmp-dbcead0fd3f3b7090a8f5b0fe07e9345620324e6.tar.bz2 qmmp-dbcead0fd3f3b7090a8f5b0fe07e9345620324e6.zip | |
fixed playlist parsing
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@593 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src')
| -rw-r--r-- | src/plugins/PlaylistFormats/m3u/m3uplaylistformat.cpp | 4 | ||||
| -rw-r--r-- | src/plugins/PlaylistFormats/pls/plsplaylistformat.cpp | 6 | ||||
| -rw-r--r-- | src/ui/playlistmodel.cpp | 10 |
3 files changed, 13 insertions, 7 deletions
diff --git a/src/plugins/PlaylistFormats/m3u/m3uplaylistformat.cpp b/src/plugins/PlaylistFormats/m3u/m3uplaylistformat.cpp index 583962025..384769399 100644 --- a/src/plugins/PlaylistFormats/m3u/m3uplaylistformat.cpp +++ b/src/plugins/PlaylistFormats/m3u/m3uplaylistformat.cpp @@ -55,8 +55,8 @@ QStringList M3UPlaylistFormat::decode(const QString & contents) ;//TODO: Let's skip it for now... else if (str.startsWith("http://")) out << str; - else if (QFileInfo(str).exists()) - out << QFileInfo(str).absoluteFilePath(); + else if (!str.startsWith("#")) + out << str; else qWarning("File %s does not exist", qPrintable(str)); } diff --git a/src/plugins/PlaylistFormats/pls/plsplaylistformat.cpp b/src/plugins/PlaylistFormats/pls/plsplaylistformat.cpp index 086cd6e9d..a505f59cc 100644 --- a/src/plugins/PlaylistFormats/pls/plsplaylistformat.cpp +++ b/src/plugins/PlaylistFormats/pls/plsplaylistformat.cpp @@ -66,10 +66,10 @@ QStringList PLSPlaylistFormat::decode(const QString & contents) { out << unverified; } - else if (QFileInfo(unverified).exists()) + else /*if (QFileInfo(unverified).exists())*/ out << QFileInfo(unverified).absoluteFilePath(); - else - qWarning("File %s does not exist", qPrintable(unverified)); + /*else + qWarning("File %s does not exist", qPrintable(unverified));*/ } } return out; diff --git a/src/ui/playlistmodel.cpp b/src/ui/playlistmodel.cpp index b155114ec..f0e1643b8 100644 --- a/src/ui/playlistmodel.cpp +++ b/src/ui/playlistmodel.cpp @@ -109,7 +109,7 @@ void PlayListModel::load(PlayListItem *item) emit firstAdded(); //if (!m_block_update_signals) - emit listChanged(); + emit listChanged(); } int PlayListModel::count() @@ -857,7 +857,13 @@ void PlayListModel::loadPlaylist(const QString &f_name) if (file.open(QIODevice::ReadOnly)) { //clear(); - addFiles(prs->decode(QTextStream(&file).readAll())); + QStringList list = prs->decode(QTextStream(&file).readAll()); + for (int i = 0; i < list.size(); ++i) + { + if (QFileInfo(list.at(i)).isRelative() && !list.at(i).contains("://")) + QString path = list[i].prepend(QFileInfo(f_name).canonicalPath () + QDir::separator ()); + } + addFiles(list); file.close(); } else |
