diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2018-06-09 21:00:38 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2018-06-09 21:00:38 +0000 |
| commit | e9de5431a1a5e9d7808cae45c234bb5cb9fd473a (patch) | |
| tree | 29809d99a1732a537c203b205b69b30b4d65dd2f /src/plugins/Input/mpc/decodermpcfactory.cpp | |
| parent | ce79cbc21b6559f54d11da95fef7364616c3d872 (diff) | |
| download | qmmp-e9de5431a1a5e9d7808cae45c234bb5cb9fd473a.tar.gz qmmp-e9de5431a1a5e9d7808cae45c234bb5cb9fd473a.tar.bz2 qmmp-e9de5431a1a5e9d7808cae45c234bb5cb9fd473a.zip | |
continue optimization, fixed memory leak
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@8008 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Input/mpc/decodermpcfactory.cpp')
| -rw-r--r-- | src/plugins/Input/mpc/decodermpcfactory.cpp | 12 |
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) |
