Android: Call release() in AndroidMediaMetadataRetriever's destructor.

This should be the default when the wrapper is destroyed.

Note: It's not possible to re-use the instance after release() is
called.

Change-Id: I761cac05ed2c2cda49573c69c6803b136892c528
Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
This commit is contained in:
Christian Strømme
2016-01-07 13:00:29 +01:00
committed by Christian Stromme
parent 63c53d21bd
commit ddaacc147e
3 changed files with 2 additions and 3 deletions

View File

@@ -230,8 +230,6 @@ void QAndroidMetaDataReaderControl::extractMetadata(QAndroidMetaDataReaderContro
string = retriever.extractMetadata(AndroidMediaMetadataRetriever::Year); string = retriever.extractMetadata(AndroidMediaMetadataRetriever::Year);
if (!string.isNull()) if (!string.isNull())
metadata.insert(QMediaMetaData::Year, string.toInt()); metadata.insert(QMediaMetaData::Year, string.toInt());
retriever.release();
} }
const QMutexLocker lock(g_metaDataReadersMtx); const QMutexLocker lock(g_metaDataReadersMtx);

View File

@@ -60,6 +60,7 @@ AndroidMediaMetadataRetriever::AndroidMediaMetadataRetriever()
AndroidMediaMetadataRetriever::~AndroidMediaMetadataRetriever() AndroidMediaMetadataRetriever::~AndroidMediaMetadataRetriever()
{ {
release();
} }
QString AndroidMediaMetadataRetriever::extractMetadata(MetadataKey key) QString AndroidMediaMetadataRetriever::extractMetadata(MetadataKey key)

View File

@@ -71,10 +71,10 @@ public:
~AndroidMediaMetadataRetriever(); ~AndroidMediaMetadataRetriever();
QString extractMetadata(MetadataKey key); QString extractMetadata(MetadataKey key);
void release();
bool setDataSource(const QUrl &url); bool setDataSource(const QUrl &url);
private: private:
void release();
QJNIObjectPrivate m_metadataRetriever; QJNIObjectPrivate m_metadataRetriever;
}; };