AVFoundation: Prevent Crash in QMediaPlayer
Task-number: QTBUG-34213 Change-Id: I0883436175439abbb4ea964ed552a17b970ed05c Reviewed-by: Michael Bruning <michael.bruning@digia.com> Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
This commit is contained in:
committed by
The Qt Project
parent
42e032bdc1
commit
b6b974361a
@@ -133,7 +133,8 @@ static void *AVFMediaPlayerSessionObserverCurrentItemObservationContext = &AVFMe
|
|||||||
|
|
||||||
- (void) unloadMedia
|
- (void) unloadMedia
|
||||||
{
|
{
|
||||||
[m_player setRate:0.0];
|
if (m_player)
|
||||||
|
[m_player setRate:0.0];
|
||||||
if (m_playerItem) {
|
if (m_playerItem) {
|
||||||
[m_playerItem removeObserver:self forKeyPath:AVF_STATUS_KEY];
|
[m_playerItem removeObserver:self forKeyPath:AVF_STATUS_KEY];
|
||||||
|
|
||||||
@@ -407,10 +408,12 @@ static void *AVFMediaPlayerSessionObserverCurrentItemObservationContext = &AVFMe
|
|||||||
[m_player removeObserver:self forKeyPath:AVF_CURRENT_ITEM_KEY];
|
[m_player removeObserver:self forKeyPath:AVF_CURRENT_ITEM_KEY];
|
||||||
[m_player removeObserver:self forKeyPath:AVF_RATE_KEY];
|
[m_player removeObserver:self forKeyPath:AVF_RATE_KEY];
|
||||||
[m_player release];
|
[m_player release];
|
||||||
|
m_player = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_playerLayer) {
|
if (m_playerLayer) {
|
||||||
[m_playerLayer release];
|
[m_playerLayer release];
|
||||||
|
m_playerLayer = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
[self unloadMedia];
|
[self unloadMedia];
|
||||||
|
|||||||
Reference in New Issue
Block a user