summaryrefslogtreecommitdiffstats
path: root/src/multimedia/playback/qmediaplayer.cpp
diff options
context:
space:
mode:
authorYoann Lopes <yoann.lopes@theqtcompany.com>2015-08-24 14:31:24 +0200
committerYoann Lopes <yoann.lopes@theqtcompany.com>2015-08-24 14:36:13 +0200
commita2244c9b7aa11e386c3331cbbc36336fb8fea3b9 (patch)
treea77ac99aa38c40e98aa483795e3cb8061f404203 /src/multimedia/playback/qmediaplayer.cpp
parent31fce88b3fcdbb4d4b2b9a889d24e25c3a5c9507 (diff)
parent008d20e0ece4c6dac148915b998a0005657d73a1 (diff)
Merge remote-tracking branch 'origin/5.5' into 5.6
Conflicts: src/imports/multimedia/qdeclarativeaudio.cpp Change-Id: I57c6252b084e4ed796f6f308b2e0c717d0f59b13
Diffstat (limited to 'src/multimedia/playback/qmediaplayer.cpp')
-rw-r--r--src/multimedia/playback/qmediaplayer.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/multimedia/playback/qmediaplayer.cpp b/src/multimedia/playback/qmediaplayer.cpp
index 396508aa9..c1636e8e8 100644
--- a/src/multimedia/playback/qmediaplayer.cpp
+++ b/src/multimedia/playback/qmediaplayer.cpp
@@ -468,6 +468,7 @@ void QMediaPlayerPrivate::disconnectPlaylist()
QObject::disconnect(playlist, SIGNAL(currentMediaChanged(QMediaContent)),
q, SLOT(_q_updateMedia(QMediaContent)));
QObject::disconnect(playlist, SIGNAL(destroyed()), q, SLOT(_q_playlistDestroyed()));
+ q->unbind(playlist);
}
}
@@ -475,6 +476,7 @@ void QMediaPlayerPrivate::connectPlaylist()
{
Q_Q(QMediaPlayer);
if (playlist) {
+ q->bind(playlist);
QObject::connect(playlist, SIGNAL(currentMediaChanged(QMediaContent)),
q, SLOT(_q_updateMedia(QMediaContent)));
QObject::connect(playlist, SIGNAL(destroyed()), q, SLOT(_q_playlistDestroyed()));
@@ -622,6 +624,8 @@ QMediaPlayer::~QMediaPlayer()
{
Q_D(QMediaPlayer);
+ d->disconnectPlaylist();
+
if (d->service) {
if (d->control)
d->service->releaseControl(d->control);