diff -r aabf2c525e0f -r 9f56a4e1b8ab uifw/AvKon/src/aknindicator.cpp --- a/uifw/AvKon/src/aknindicator.cpp Fri Mar 12 15:43:43 2010 +0200 +++ b/uifw/AvKon/src/aknindicator.cpp Mon Mar 15 12:41:34 2010 +0200 @@ -608,6 +608,13 @@ } MAknsSkinInstance* skin = AknsUtils::SkinInstance(); + + if ( iIndicatorBitmaps[layoutMode]->Count() <= 0 || !iIndicatorBitmaps[layoutMode]->At( 0 ) ) + { + + __ASSERT_DEBUG( EFalse, User::Panic( _L("indicatorcount"),iIndicatorBitmaps[layoutMode]->Count())); + return; + } TSize iconSize( iIndicatorBitmaps[layoutMode]->At( 0 )->SizeInPixels() ); TInt iconWidth = iconSize.iWidth; TInt iconHeight = iconSize.iHeight; @@ -652,8 +659,9 @@ } } - if ( iIndicatorBitmaps[layoutMode]->At( iAnimState * 2 ) && - iIndicatorBitmaps[layoutMode]->At( iAnimState * 2 + 1 ) ) + if ( ( iAnimState * 2 + 1 ) < iIndicatorBitmaps[layoutMode]->Count() + && iIndicatorBitmaps[layoutMode]->At(iAnimState * 2) + && iIndicatorBitmaps[layoutMode]->At(iAnimState * 2 + 1)) { CFbsBitmap* mask = iIndicatorBitmaps[layoutMode]->At( iAnimState * 2 + 1 ); if ( iExtension && iExtension->iFader ) @@ -671,7 +679,8 @@ mask, ETrue ); } - else if ( iIndicatorBitmaps[layoutMode]->At( iAnimState * 2 ) ) + else if (( iAnimState * 2 ) < iIndicatorBitmaps[layoutMode]->Count() + && iIndicatorBitmaps[layoutMode]->At(iAnimState * 2) ) { // Draw editor indicator bitmap without mask CFbsBitmap* mask = iIndicatorBitmaps[layoutMode]->At( iAnimState * 2 );