"Nokia submits
this code under the terms of a commercial contribution agreement
with RealNetworks, and I am authorized
to contribute this code under said agreement."
Modified by:
saleem.adookkattil nokia.com Reviewed
by:
Date: 27-March-2008 Project: SymbianMmf_Rel
TSW: EMKD-7CWKEC
Synopsis: Fix to correct MMF controller
failure to handle resource lost/restored events in closed state.
Overview: Upon completion of the play
back MMF controller set the state to close. If the player uses DSP decoder to
decode the video content MMF controller may get a resource lost/restored event
from the video adapter at any state. MMF controller doesn't handle these events
in closed state and forward it to higher level to handle it after changing the
MM state to error state. As the state is closed there is no need to report it to
higher level or change the state of controller to error state. Fix made as given
in the diff file.
Files Modified: /cvsroot/clientapps/symbianMmf/hxmmfstateclosed.cpp
Image Size and Heap Use impact:
None Module Release testing (STIF) : Pass
Test case(s) Added : No
Memory leak check performed : No new
leaks introduced.
Platforms and Profiles Build Verified:
Profile ->
helix-client-s60-32-mmf-mdf-arm BIF branch -> helix_restricted SYSTEM_ID -> symbian-91-armv5 Target -> symbianMmf_rel Platforms and Profiles Functionality verified: armv5, winscw
Branch: 210CayS, 221CayS& head
Index: hxmmfstateclosed.cpp
===================================================================
RCS file:
/cvsroot/clientapps/symbianMmf/hxmmfstateclosed.cpp,v retrieving revision 1.3.2.7 diff -u -w -r1.3.2.7 hxmmfstateclosed.cpp
---
hxmmfstateclosed.cpp 21 Jun 2007
16:50:30 -0000 1.3.2.7 +++
hxmmfstateclosed.cpp 27 Mar 2008
20:05:43 -0000
 -176,10
+176,12  HXLOGL2(HXLOG_SMMF,
"HXMMFStateClosed::ErrorOccurred"); // - // Partial Playback error is consumed here so
return KErrNone. +
// Consume errors those are not an error at close state here and return
KErrNone. // Otherwise, pass error up since we are
in the closed state // - if (ulHXCode == HXR_PARTIALPLAYBACK) + if (ulHXCode ==
HXR_PARTIALPLAYBACK || + ulHXCode ==
HXR_DEVVIDEO_RESOURCE_RESTORED || + ulHXCode ==
HXR_DEVVIDEO_RESOURCE_LOST) { return KErrNone;
}
|