diff options
author | Gareth Stockwell <ext-gareth.stockwell@nokia.com> | 2010-06-08 15:06:37 (GMT) |
---|---|---|
committer | Gareth Stockwell <ext-gareth.stockwell@nokia.com> | 2010-07-07 12:25:43 (GMT) |
commit | 31d4037ad8e07fc4302a846271b28965f3e11069 (patch) | |
tree | b258fa6a5d04ee484f34c192efedc1519efdd3cc /src/3rdparty/phonon/mmf/videoplayer_surface.h | |
parent | 50fbb9d19b3f524361c146de8ff0fb2fe6abacc9 (diff) | |
download | Qt-31d4037ad8e07fc4302a846271b28965f3e11069.zip Qt-31d4037ad8e07fc4302a846271b28965f3e11069.tar.gz Qt-31d4037ad8e07fc4302a846271b28965f3e11069.tar.bz2 |
Fixed crash which occurs when switching between video clips
When Phonon::MediaObject::setCurrentSource() is called when the
MediaObject is connected to a Phonon::VideoWidget, the
MMF::AbstractVideoOutput pointer is propagated inside the backend
from the first MMF::AbstractVideoPlayer to the second.
If the VideoWidget is subsquently re-sized, the code path enters
the ScaleFactors branch of the
MMF::SurfaceVideoPlayer::handleParametersChanged function. At this
point, m_displayWindow is still set to the inital null value, and the
assertion therefore fails.
This change ensures that m_displayWindow is updated before attempting
to apply the scale factor change.
Task-number: QTBUG-11377
Reviewed-by: Thierry Bastian
Diffstat (limited to 'src/3rdparty/phonon/mmf/videoplayer_surface.h')
-rw-r--r-- | src/3rdparty/phonon/mmf/videoplayer_surface.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/3rdparty/phonon/mmf/videoplayer_surface.h b/src/3rdparty/phonon/mmf/videoplayer_surface.h index c05da9c..8572fdc 100644 --- a/src/3rdparty/phonon/mmf/videoplayer_surface.h +++ b/src/3rdparty/phonon/mmf/videoplayer_surface.h @@ -62,6 +62,9 @@ private: void handleVideoWindowChanged(); void handleParametersChanged(VideoParameters parameters); + void addDisplayWindow(const TRect &rect); + void removeDisplayWindow(); + private: // Window handle which has been passed to the MMF via // CVideoPlayerUtility2::SetDisplayWindowL |