Looks good.

fxd

[email protected] wrote:
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: [email protected] Reviewed by: Rathinasamy Rajesh; Amick Patrick; TSW Id: ESLM-83PVBW

Date: 05/05/2010
Project: SymbianMmf_wm Synopsis: Music player is crash when refreshing and playing a high bitrate wma song Overview: The wma file is WMA9 lossless(format tag 0x163). This format is not supported by decoder. However a crash is seen during initialization. This crash is seen only in DSP codec. Devsound initialization is asynchronous call. In MDFDevSound::Open(), asynchronous request for devsound initialization is made and then hardware configuration is set via LoadCustomInterfaces() by calling HXMDFDevConfWMA::SetHwDevCIs(). SetHwDevCIs configuration fails because CWmaDecoderIntfc::ApplyConfig() returns error as KErrArgument (-6). This error is neglected in the MDFDevSound::Open(). After sometime devsound initialization completes and when tried to set config crash occurs. Since SetHwDevCIs() has failed, request for devsound initialization should be cancelled.

Fix:  1. Pending Devsound initialization can be cancelled by calling 
CMMFDevSound::CancelInitialize(). Added this API in CHXMMFDevSound.
      2. With first change another crash is seen in 
HXClientPropWatch::PropWatchResponse::DeletedProp(). This is because property 
"MMF.SecureOutput" added in CHXMDFAudioDevice::Open() was not cleared when 
devsound initialization had failed. Added code to clear this property when devsound is 
not initialized.
Files modified & changes:
/audio/device/pub/platform/symbian/CHXMMFDevSound.h
/audio/device/platform/symbian/common/CHXMMFDevSound.cpp
/datatype/mdf/audio/dsp/mdfdevsound.cpp
/datatype/mdf/audio/dsp/mdfauddevice.cpp

Image Size and Heap Use impact: No major impact
Module Release testing (STIF) : Done Test case(s) Added : No

Memory leak check performed : Passed, No additional leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-52-mmf-mdf-dsp Platforms and Profiles Functionality verified: armv5 Branch: 210CayS, 420Bizo and HEAD
Attached diff.


_______________________________________________
Audio-dev mailing list
[email protected]
http://lists.helixcommunity.org/mailman/listinfo/audio-dev

Reply via email to