uigraphics/AknIcon/srvsrc/AknIconSrv.cpp
branchRCL_3
changeset 25 9f95a5546443
parent 24 e4e3998ddda2
--- a/uigraphics/AknIcon/srvsrc/AknIconSrv.cpp	Tue Aug 31 16:13:36 2010 +0300
+++ b/uigraphics/AknIcon/srvsrc/AknIconSrv.cpp	Wed Sep 01 12:19:53 2010 +0100
@@ -742,6 +742,7 @@
 CAknIconSrvIconItem* CAknIconServer::CreateIconL(
     const TAknIconParams& aInfo )
     {
+    const TInt KMaxIconDataLimit = 0xFA000;
     CFbsBitmap* bitmap = new (ELeave) CFbsBitmap;
     CleanupStack::PushL( bitmap );
 
@@ -765,6 +766,11 @@
 
     TPtrC8 iconData = InitIconDataAndHandlerLC(aInfo, loader, handler);        
 
+    if(iconData.Size()>KMaxIconDataLimit)
+        {
+        User::Leave(KErrTooBig);
+        }
+    
     bitmapDepth = (TDisplayMode)loader->IconDepthL( aInfo.iBitmapId );    
 
     handler->PrepareIconL( iconData, handle );