diff -r cbb1bfb7ebfb -r edd273b3192a mpx/playbackframework/playbackengine/src/mpxplaybackengine.cpp --- a/mpx/playbackframework/playbackengine/src/mpxplaybackengine.cpp Fri May 14 16:21:14 2010 +0300 +++ b/mpx/playbackframework/playbackengine/src/mpxplaybackengine.cpp Thu May 27 13:19:19 2010 +0300 @@ -530,12 +530,6 @@ iLastActiveProcess = aCmd.ValueTObjectL( KMPXCommandPlaybackGeneralClientPid); } - else if (EPbCmdStop == cmd) - { - ASSERT(aCmd.IsSupported(KMPXCommandPlaybackGeneralClientPid)); - iLastInactiveProcess = aCmd.ValueTObjectL( - KMPXCommandPlaybackGeneralClientPid); - } TInt data(0); if (aCmd.IsSupported(KMPXCommandPlaybackGeneralData)) { @@ -651,6 +645,7 @@ break; case EPbPropertyMute: MPX_DEBUG2( "CMPXPlaybackEngine::SetL EPbPropertyMute %d", aValue ); + iProperties[EPbPropertyMute] = aValue; // set now, needed when EPSetComplete is converted to EPropertyChanged if ( iPluginHandler->Plugin() ) { PluginL()->SetL( aProperty, aValue ); @@ -1134,14 +1129,12 @@ } case EPMuteChanged: { - if ( iProperties[EPbPropertyMute] != aData ) - { - iProperties[EPbPropertyMute] = aData; - iClientList->SendMsgL( - TMPXPlaybackMessage(TMPXPlaybackMessage::EPropertyChanged, + // property changed broadcast message after successful return from plugins + iProperties[EPbPropertyMute] = aData; + iClientList->SendMsgL( + TMPXPlaybackMessage(TMPXPlaybackMessage::EPropertyChanged, EPbPropertyMute, iProperties[EPbPropertyMute])); - } break; } case EPPositionChanged: