--- a/serviceproviders/sapi_messaging/messagingservice/src/sendmessage.cpp Tue May 11 17:01:36 2010 +0300
+++ b/serviceproviders/sapi_messaging/messagingservice/src/sendmessage.cpp Tue May 25 13:38:11 2010 +0300
@@ -675,7 +675,20 @@
CSmsHeader& smsHdr = clientMtm->SmsHeader();
CSmsSettings* smsSetting = CSmsSettings::NewLC();
smsSetting->CopyL(clientMtm->ServiceSettings());
+ TInt pdus;
+ TInt numberOfUnconvertedChars;
+ TInt numberOfDowngradedChars;
+ TInt freeUDUnitsInLastPDU;
+ CSmsMessage& smsMsg = smsHdr.Message();
+ smsMsg.GetEncodingInfoL(pdus, numberOfUnconvertedChars, numberOfDowngradedChars, freeUDUnitsInLastPDU );
+ if( numberOfUnconvertedChars || numberOfDowngradedChars )
+ {
smsSetting->SetCharacterSet(TSmsDataCodingScheme::ESmsAlphabetUCS2);
+ }
+ else
+ {
+ smsSetting->SetCharacterSet(TSmsDataCodingScheme::ESmsAlphabet7Bit);
+ }
smsHdr.SetSmsSettingsL(*smsSetting);
CleanupStack::PopAndDestroy(smsSetting);