aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Input/mpc/decodermpcfactory.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/Input/mpc/decodermpcfactory.cpp')
-rw-r--r--src/plugins/Input/mpc/decodermpcfactory.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/plugins/Input/mpc/decodermpcfactory.cpp b/src/plugins/Input/mpc/decodermpcfactory.cpp
index bc397779f..27026fb03 100644
--- a/src/plugins/Input/mpc/decodermpcfactory.cpp
+++ b/src/plugins/Input/mpc/decodermpcfactory.cpp
@@ -68,12 +68,13 @@ Decoder *DecoderMPCFactory::create(const QString &, QIODevice *i)
QList<TrackInfo *> DecoderMPCFactory::createPlayList(const QString &path, TrackInfo::Parts parts, QStringList *)
{
TrackInfo *info = new TrackInfo(path);
+
+ if(parts == TrackInfo::NoParts)
+ return QList<TrackInfo*>() << info;
+
TagLib::FileStream stream(QStringToFileName(path), true);
TagLib::MPC::File fileRef(&stream);
- if (fileRef.audioProperties())
- info->setDuration(fileRef.audioProperties()->lengthInMilliseconds());
-
if((parts & TrackInfo::MetaData) && fileRef.APETag() && !fileRef.APETag()->isEmpty())
{
TagLib::APE::Tag *tag = fileRef.APETag();
@@ -98,11 +99,10 @@ QList<TrackInfo *> DecoderMPCFactory::createPlayList(const QString &path, TrackI
info->setValue(Qmmp::CHANNELS, fileRef.audioProperties()->channels());
info->setValue(Qmmp::BITS_PER_SAMPLE, 16);
info->setValue(Qmmp::FORMAT_NAME, QString("Musepack SV%1").arg(fileRef.audioProperties()->mpcVersion()));
+ info->setDuration(fileRef.audioProperties()->lengthInMilliseconds());
}
- QList <TrackInfo*> list;
- list << info;
- return list;
+ return QList<TrackInfo*>() << info;
}
MetaDataModel* DecoderMPCFactory::createMetaDataModel(const QString &path, QObject *parent)