summaryrefslogtreecommitdiffstats
path: root/src/plugins/wmf/decoder
diff options
context:
space:
mode:
authorNodir Temirkhodjaev <nodir.temir@gmail.com>2014-09-05 16:29:41 +0500
committerNodir Temirkhodjaev <nodir.temir@gmail.com>2014-09-11 10:17:40 +0200
commit5be252432804ebf50992c266dad9c93bd039ed41 (patch)
tree2ea443e38c1ecb3c40e84063e6cd475a096e8dee /src/plugins/wmf/decoder
parent4c5aec9bb6fd95a65544aa433f1357320132ae9f (diff)
WMF: fix memory leaks.
Release requested interfaces. Task-number: QTBUG-32481 Change-Id: I846981f6a7a7ea77588b9322fc41e05e583bdb15 Reviewed-by: Wouter Huysentruit <wouter_huysentruit@hotmail.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com> Reviewed-by: Jeff Tranter <jtranter@ics.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Diffstat (limited to 'src/plugins/wmf/decoder')
-rw-r--r--src/plugins/wmf/decoder/mfaudiodecodercontrol.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/plugins/wmf/decoder/mfaudiodecodercontrol.cpp b/src/plugins/wmf/decoder/mfaudiodecodercontrol.cpp
index 22eb1a09c..d9122e5d5 100644
--- a/src/plugins/wmf/decoder/mfaudiodecodercontrol.cpp
+++ b/src/plugins/wmf/decoder/mfaudiodecodercontrol.cpp
@@ -244,7 +244,6 @@ void MFAudioDecoderControl::handleMediaSourceReady()
}
if (m_sourceResolver->mediaSource()) {
- IMFPresentationDescriptor *pd = 0;
if (mediaType && m_resampler) {
HRESULT hr = S_OK;
hr = m_resampler->SetInputType(m_mfInputStreamID, mediaType, 0);
@@ -254,9 +253,11 @@ void MFAudioDecoderControl::handleMediaSourceReady()
qWarning() << "MFAudioDecoderControl: failed to SetInputType of resampler" << hr;
}
}
+ IMFPresentationDescriptor *pd;
if (SUCCEEDED(m_sourceResolver->mediaSource()->CreatePresentationDescriptor(&pd))) {
UINT64 duration = 0;
pd->GetUINT64(MF_PD_DURATION, &duration);
+ pd->Release();
duration /= 10000;
if (m_duration != qint64(duration)) {
m_duration = qint64(duration);