diff -r ebd48d2de13c -r ecbabf52600f textinput/ptienginev2/src/PtiLanguageDatabase.cpp --- a/textinput/ptienginev2/src/PtiLanguageDatabase.cpp Tue Aug 31 15:31:50 2010 +0300 +++ b/textinput/ptienginev2/src/PtiLanguageDatabase.cpp Wed Sep 01 12:23:33 2010 +0100 @@ -342,6 +342,8 @@ {0, 0} }; +const TInt xt9LangImplUidDanish = 0x10282D36; +const TInt xt9LangImplUidNorwegian = 0x10282D38; // --------------------------------------------------------------------------- // CPtiLanguageDatabase::LanguageCodeForUid @@ -351,6 +353,15 @@ EXPORT_C TInt CPtiLanguageDatabase::LanguageCodeForUid(TInt aUid) { TInt i; + + if ( aUid == xt9LangImplUidDanish ) + { + return ELangDanish; + } + else if ( aUid == xt9LangImplUidNorwegian ) + { + return ELangNorwegian; + } for (i = 0; ; i++) { @@ -375,6 +386,7 @@ // EXPORT_C TInt CPtiLanguageDatabase::CreateMappingTableL(TInt aCoreUid, RArray& aResult) { + CleanupClosePushL( aResult ); TInt res = 0, i, lc; TPtiLangDatabaseMapping map; CArrayFix* dbs = ListDatabasesLC(aCoreUid); @@ -402,6 +414,7 @@ } CleanupStack::PopAndDestroy(); // dbs + CleanupStack::Pop( &aResult ); return res; } @@ -413,6 +426,7 @@ // EXPORT_C TInt CPtiLanguageDatabase::CreateMappingTableWithOpaqueL(TInt aCoreUid, RArray& aResult) { + CleanupClosePushL( aResult ); TInt res = 0, lc; TPtiLangDatabaseMappingOpaque map; RImplInfoPtrArray infoArray; @@ -447,7 +461,7 @@ } CleanupStack::PopAndDestroy(); // infoArray - + CleanupStack::Pop( &aResult ); return res; }