Join Now

This page was last modified 13:05, 24 June 2008.

Icon creation panics if out of bounds

From Forum Nokia Wiki

Image:KB_Developer.gif

ID Unofficial - No ID assigned Creation date Nov 13, 2007
Platform S60 3rd Edition MR Devices Emulator
Category Symbian C++ Subcategory AknIconUtils and AknsUtils classes

Description

When trying to create an icon with both

AknIconUtils::CreateIconL()
AknsUtils::CreateIconL()

and given a .mif file which is indexed with an out-of-bound index to create an icon, a panic "AknIcon 5" appears.

This might also be the case with .mbm files.

Enhancement proposals

Both

AknIconUtils::CreateIconL()
AknsUtils::CreateIconL()

should not panic if given an out-of-bounds index in a .mif file. Instead, they should return an error code (see below for correct behavior).

The documentation should also include a notice about the possible panic if this is not corrected to the S60 platform.

Solution

Do not use the methods

AknIconUtils::CreateIconL()
AknsUtils::CreateIconL()

in your code if there is a danger of out-of-bounds graphic to appear in a .mif file. Instead use

CFbsBitmap* bitMapErr = new CFbsBitmap;
TInt err = bitMapErr->Load(FILENAME, IMG_ID);

to test of possible out-of-bounds conditions. The above returns correctly

KErrEof -25 End of file has been reached.

for an out-of-bounds index which can be handled by the developer.

Another option would be to add suitable accessors to test how many images there are inside a .mif file prior to invoking the icon creation functions.

 
Powered by MediaWiki
     
     RDF Facets:
     
     
     qfnZtypeQUqfnTypeZCommunityContentQ
     qfnZtypeQUqfnTypeZKnowledgeBaseContentQ
     qfnZtypeQUqfnTypeZKnownIssueQ
     qfnZtypeQUqfnTypeZWebpageQ
     qfnZtypeQUqfnTypeZWikiContentQ
     qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX