--- a/mpxmusicplayer/metadatahandler/src/mpxmetadatahandlerimp.cpp Tue Jan 26 11:56:33 2010 +0200
+++ b/mpxmusicplayer/metadatahandler/src/mpxmetadatahandlerimp.cpp Tue Feb 02 00:09:33 2010 +0200
@@ -576,7 +576,7 @@
TMediaAttributeIter& aAttributeIter )
{
MPX_FUNC( "CMPXMetaDataHandlerImp::MrcmitoGetCurrentlyPlayingMetadata" );
- const TInt KMaxMediaAttrLen = 50; // Replace with suitable value
+ const TInt KMaxMediaAttrLen = 300; // >110 is required for AVRCP fragmentation
TBuf8<KMaxMediaAttrLen> attrBuf;
TMediaAttributeId attrId;
aAttributeIter.Start();
@@ -650,9 +650,15 @@
}
if( detail )
{
- if( CnvUtfConverter::ConvertFromUnicodeToUtf8( attrBuf, *detail ) )
+ const TInt returnValue = CnvUtfConverter::ConvertFromUnicodeToUtf8( attrBuf, *detail );
+ if ( returnValue == CnvUtfConverter::EErrorIllFormedInput)
{
- attrBuf.Zero(); // Check if this generates the right response
+ MPX_DEBUG1( "CMPXMetaDataHandlerImp::MrcmitoGetCurrentlyPlayingMetadata - Illformed string, sending zero length response" );
+ attrBuf.Zero();
+ }
+ else if ( returnValue > 0 )
+ {
+ MPX_DEBUG1( "CMPXMetaDataHandlerImp::MrcmitoGetCurrentlyPlayingMetadata - Could not convert whole string, sending converted fragment" );
}
}
if( val )