diff -r 2a28ef775f15 -r 5bf83dc720b3 multimediacommscontroller/mmccinterface/src/mmcccodecdtmf.cpp --- a/multimediacommscontroller/mmccinterface/src/mmcccodecdtmf.cpp Wed Apr 14 16:21:36 2010 +0300 +++ b/multimediacommscontroller/mmccinterface/src/mmcccodecdtmf.cpp Tue Apr 27 17:02:55 2010 +0300 @@ -36,6 +36,7 @@ const TText8 KCharComma = ','; const TText8 KCharHyphen = '-'; const TText8 KCharSpace = ' '; +const TText8 KCharSemicolon = ';'; @@ -384,13 +385,20 @@ if ( aFmtp.Length() > 0 ) { + //the firt, process semicolon and get its left data + TBufC8<256> value(aFmtp); + TInt match = value.Locate( KCharSemicolon ); + if( KErrNotFound != match ) + { + value = value.Left( match ); + } // white space is not allowed - if ( aFmtp.Locate( KCharSpace ) >= 0 ) + if ( value.Locate( KCharSpace ) >= 0 ) { User::Leave( KErrArgument ); } - CPtrC8Array* tokens = TokenizeL( aFmtp, KCharComma ); + CPtrC8Array* tokens = TokenizeL( value, KCharComma ); CleanupStack::PushL( tokens ); // Mask will be updated while parsing