diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2011-04-10 20:50:28 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2011-04-10 20:50:28 +0000 |
| commit | d797b6af7c3d86cffd26ff8a1d4844dc5cc730b5 (patch) | |
| tree | e9609cb08d6953c18be48bb3d7592c36c7ae5e8b /src/qmmpui | |
| parent | de2cf5e954ce3a1166deede76a539446f85a9e08 (diff) | |
| download | qmmp-d797b6af7c3d86cffd26ff8a1d4844dc5cc730b5.tar.gz qmmp-d797b6af7c3d86cffd26ff8a1d4844dc5cc730b5.tar.bz2 qmmp-d797b6af7c3d86cffd26ff8a1d4844dc5cc730b5.zip | |
fixed regression, fixed signals synchronization (Fixes issue 447), fixed
mplayer engine bugs
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@2152 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui')
| -rw-r--r-- | src/qmmpui/fileloader.cpp | 9 | ||||
| -rw-r--r-- | src/qmmpui/fileloader.h | 1 | ||||
| -rw-r--r-- | src/qmmpui/mediaplayer.cpp | 42 |
3 files changed, 8 insertions, 44 deletions
diff --git a/src/qmmpui/fileloader.cpp b/src/qmmpui/fileloader.cpp index 9e48e8cfe..203d147fe 100644 --- a/src/qmmpui/fileloader.cpp +++ b/src/qmmpui/fileloader.cpp @@ -41,11 +41,10 @@ void FileLoader::addFile(const QString &path) void FileLoader::addDirectory(const QString& s) { - QStringList filters = MetaDataManager::instance()->nameFilters(); QDir dir(s); dir.setFilter(QDir::Files | QDir::Hidden | QDir::NoSymLinks); dir.setSorting(QDir::Name); - QFileInfoList l = dir.entryInfoList(filters); + QFileInfoList l = dir.entryInfoList(m_filters); foreach(QFileInfo info, l) { addFile(info.absoluteFilePath ()); @@ -85,18 +84,24 @@ void FileLoader::run() void FileLoader::loadFile(const QString &path) { m_files.enqueue(path); + if(m_filters.isEmpty()) + m_filters = MetaDataManager::instance()->nameFilters(); start(QThread::IdlePriority); } void FileLoader::loadFiles(const QStringList &paths) { m_files << paths; + if(m_filters.isEmpty()) + m_filters = MetaDataManager::instance()->nameFilters(); start(QThread::IdlePriority); } void FileLoader::loadDirectory(const QString &path) { m_directories.enqueue(path); + if(m_filters.isEmpty()) + m_filters = MetaDataManager::instance()->nameFilters(); start(QThread::IdlePriority); } diff --git a/src/qmmpui/fileloader.h b/src/qmmpui/fileloader.h index afa356183..f3c89b490 100644 --- a/src/qmmpui/fileloader.h +++ b/src/qmmpui/fileloader.h @@ -81,6 +81,7 @@ protected: private: QQueue <QString> m_files; QQueue <QString> m_directories; + QStringList m_filters; bool m_finished; }; diff --git a/src/qmmpui/mediaplayer.cpp b/src/qmmpui/mediaplayer.cpp index ea45c2b78..21051c7fe 100644 --- a/src/qmmpui/mediaplayer.cpp +++ b/src/qmmpui/mediaplayer.cpp @@ -103,45 +103,6 @@ void MediaPlayer::play(qint64 offset) m_nextUrl.clear(); return; } - - /*if (!m_core->play(s, false, offset)) - { - //find out the reason why playback failed - switch ((int) m_core->state()) - { - case Qmmp::FatalError: - { - stop(); - return; //unrecovable error in output, so abort playing - } - case Qmmp::NormalError: - { - //error in decoder, so we should try to play next song - m_skips++; - if (m_skips > MAX_SKIPS) - { - stop(); - qWarning("MediaPlayer: skip limit exceeded"); - break; - } - qApp->processEvents(); - if (!m_pl_manager->currentPlayList()->isEmptyQueue()) - { - m_pl_manager->currentPlayList()->setCurrentToQueued(); - } - else if (!m_pl_manager->currentPlayList()->next()) - { - stop(); - return; - } - play(); - break; - } - } - } - else - m_skips = 0;*/ - m_core->play(s, false, offset); m_skips = 0; } @@ -256,11 +217,8 @@ void MediaPlayer::processState(Qmmp::State state) { case Qmmp::NormalError: stop(); - //playNext(); if (m_skips < MAX_SKIPS) { - //stop(); - //qWarning("MediaPlayer: skip limit exceeded"); playNext(); m_skips++; } |
