mpxmusicplayer/metadatahandler/src/mpxmetadatahandlerimp.cpp
changeset 5 2a40e88564c8
parent 0 ff3acec5bc43
child 15 171e07ac910f
--- 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 )