Archived:AknTextUtils::WrapToArrayL() does not accept literals (Known Issue)
Archived: This article is archived because it is not considered relevant for third-party developers creating commercial solutions today. If you think this article is still relevant, let us know by adding the template {{ReviewForRemovalFromArchive|user=~~~~|write your reason here}}.
AknTextUtils::WrapToArrayL() exits with KERNEXEC 3 panic when a literal (such as _L("") or _LIT("")) is passed as a parameter. It works fine if a descriptor other than a literal is passed. (e.g. TBuf, HBuf, TLitC).
Article Metadata
Tested with
Devices(s): Nokia N95, Nokia E90 Communicator, Nokia N73
Compatibility
Platform(s): S60 3rd Edition, S60 3rd Edition FP1
Article
Created: User:Technical writer 1
(07 Aug 2008)
Last edited: hamishwillee
(07 Aug 2012)
How to reproduce
- Declare and initialize a TRect object.
- Declare and initialize a const CFont object and use the following lines of code.
-
CArrayFix<TPtrC>* array = new (ELeave)CArrayFixFlat<TPtrC>( 1 );
CleanupStack::PushL( array );
AknTextUtils::WrapToArrayL( _L( "Foo" ), aRect.Width(), *aFont, *array );
-
This works fine if the following lines of code are used:
_LIT(KBuf,"Foo");
TBuf<10> buf = KBuf;
CArrayFix<TPtrC>* array = new (ELeave)CArrayFixFlat<TPtrC>( 1 );
CleanupStack::PushL( array );
AknTextUtils::WrapToArrayL( buf, aRect.Width(), *aFont, *array );
Solution
No solution exists.

