diff options
author | Ling Hu <ling.hu@nokia.com> | 2012-07-05 14:47:42 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-07-11 06:56:18 +0200 |
commit | 48c945bac3030c1c26dd9da9bea6e0deea7e5714 (patch) | |
tree | 4f802540ee898c738ec1606fab2f7c3503bbfd59 /src/plugins/wmf/player/mfplayersession.cpp | |
parent | 51d7737c19dcffc3fc3039d3565cdea30daf0346 (diff) |
Added wmf implementation for QAudioDecoderControl
Change-Id: Ib6d5c93577bd55995a9ae51e757156149890f15d
Reviewed-by: Jun Zhu <jun.5.zhu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Diffstat (limited to 'src/plugins/wmf/player/mfplayersession.cpp')
-rw-r--r-- | src/plugins/wmf/player/mfplayersession.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/plugins/wmf/player/mfplayersession.cpp b/src/plugins/wmf/player/mfplayersession.cpp index ef359b5e5..2d56aff3d 100644 --- a/src/plugins/wmf/player/mfplayersession.cpp +++ b/src/plugins/wmf/player/mfplayersession.cpp @@ -418,7 +418,7 @@ MFPlayerSession::MFPlayerSession(MFPlayerService *playerService) , m_mediaTypes(0) { m_hCloseEvent = CreateEvent(NULL, FALSE, FALSE, NULL); - m_sourceResolver = new SourceResolver(this); + m_sourceResolver = new SourceResolver(); QObject::connect(m_sourceResolver, SIGNAL(mediaSourceReady()), this, SLOT(handleMediaSourceReady())); QObject::connect(m_sourceResolver, SIGNAL(error(long)), this, SLOT(handleSourceError(long))); QObject::connect(this, SIGNAL(sessionEvent(IMFMediaEvent *)), this, SLOT(handleSessionEvent(IMFMediaEvent *))); @@ -456,9 +456,13 @@ void MFPlayerSession::close() if (SUCCEEDED(hr)) { if (m_session) m_session->Shutdown(); - m_sourceResolver->shutdown(); + if (m_sourceResolver) + m_sourceResolver->shutdown(); + } + if (m_sourceResolver) { + m_sourceResolver->Release(); + m_sourceResolver = 0; } - m_sourceResolver->Release(); if (m_session) m_session->Release(); |