charconvfw/charconvplugins/src/plugins/ISO2022JP_2.CPP
changeset 40 91ef7621b7fc
parent 0 1fb32624e06b
child 55 336bee5c2d35
--- a/charconvfw/charconvplugins/src/plugins/ISO2022JP_2.CPP	Mon May 03 14:13:26 2010 +0300
+++ b/charconvfw/charconvplugins/src/plugins/ISO2022JP_2.CPP	Thu Jun 24 11:18:23 2010 +0800
@@ -284,6 +284,7 @@
         const TDesC16& aUnicode, 
         CCnvCharacterSetConverter::TArrayOfAscendingIndices& aIndicesOfUnconvertibleCharacters)
     {
+    TInt ret = KErrNone;
     RArray<CnvUtilities::SCharacterSet> characterSets;
     if ( FeatureManager::FeatureSupported(KFeatureIdJapanesePicto) )
         {        
@@ -291,19 +292,19 @@
         characterSet.iConversionData=&CnvJisRoman::ConversionData();
         characterSet.iConvertFromIntermediateBufferInPlace=ConvertFromJisRomanToJisInPlace;
         characterSet.iEscapeSequence=&KLit8EscapeSequenceForJisRoman;
-        characterSets.Append(characterSet);
+        ret |= characterSets.Append(characterSet);
         characterSet.iConversionData=&CCnvCharacterSetConverter::AsciiConversionData();
         characterSet.iConvertFromIntermediateBufferInPlace=ConvertFromAsciiToJisInPlace;
         characterSet.iEscapeSequence=&KLit8EscapeSequenceForAscii;
-        characterSets.Append(characterSet);
+        ret |= characterSets.Append(characterSet);
         characterSet.iConversionData=&CnvJisX0208::ConversionData();
         characterSet.iConvertFromIntermediateBufferInPlace=ConvertFromJisX0208ToJisInPlace;
         characterSet.iEscapeSequence=&KLit8EscapeSequenceForJisX0208_1983;
-        characterSets.Append(characterSet);
+        ret |= characterSets.Append(characterSet);
         characterSet.iEscapeSequence=&KLit8EscapeSequenceForJisX0208_1983;
         characterSet.iConversionData=&CnvJisBase::HalfWidthKatakana7ConversionData();
         characterSet.iConvertFromIntermediateBufferInPlace=ConvertFromHalfKatakanaToFullKatakana;
-        characterSets.Append(characterSet);
+        ret |= characterSets.Append(characterSet);
 
         SetCharacterSetsForPictograph(characterSets);
         }
@@ -313,20 +314,21 @@
         characterSet.iConversionData=&CCnvCharacterSetConverter::AsciiConversionData();
         characterSet.iConvertFromIntermediateBufferInPlace=ConvertFromAsciiToJisInPlace;
         characterSet.iEscapeSequence=&KLit8EscapeSequenceForAscii;
-        characterSets.Append(characterSet);
+        ret |= characterSets.Append(characterSet);
         characterSet.iConversionData=&CnvJisRoman::ConversionData();
         characterSet.iConvertFromIntermediateBufferInPlace=ConvertFromJisRomanToJisInPlace;
         characterSet.iEscapeSequence=&KLit8EscapeSequenceForJisRoman;
-        characterSets.Append(characterSet);
+        ret |= characterSets.Append(characterSet);
         characterSet.iConversionData=&CnvJisX0208::ConversionData();
         characterSet.iConvertFromIntermediateBufferInPlace=ConvertFromJisX0208ToJisInPlace;
         characterSet.iEscapeSequence=&KLit8EscapeSequenceForJisX0208_1983;
-        characterSets.Append(characterSet);
+        ret |= characterSets.Append(characterSet);
         characterSet.iEscapeSequence=&KLit8EscapeSequenceForJisX0208_1983;
         characterSet.iConversionData=&CnvJisBase::HalfWidthKatakana7ConversionData();
         characterSet.iConvertFromIntermediateBufferInPlace=ConvertFromHalfKatakanaToFullKatakana;
-        characterSets.Append(characterSet);
+        ret |= characterSets.Append(characterSet);
         }
+    __ASSERT_DEBUG(!ret, User::Panic(_L("RArray append failure"), ret));
     TUint notUsed;
 //S60 30    TUint inputConversionFlags=CCnvCharacterSetConverter::EInputConversionFlagMustEndInDefaultCharacterSet;
     TUint inputConversionFlags=CCnvCharacterSetConverter::EInputConversionFlagMustEndInDefaultCharacterSet |
@@ -392,7 +394,11 @@
 
 const TImplementationProxy ImplementationTable[] = 
     {
-        IMPLEMENTATION_PROXY_ENTRY(0x100066A0,  CISO2022JPConverterImpl::NewL)
+#ifdef S60_TEST
+    IMPLEMENTATION_PROXY_ENTRY(0x01000006,  CISO2022JPConverterImpl::NewL)
+#else
+    IMPLEMENTATION_PROXY_ENTRY(0x100066A0,  CISO2022JPConverterImpl::NewL)
+#endif        
     };
 
 EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)