--- a/serviceproviders/sapi_messaging/messagingservice/src/sendmessage.cpp Tue Aug 31 16:06:03 2010 +0300
+++ b/serviceproviders/sapi_messaging/messagingservice/src/sendmessage.cpp Wed Sep 01 12:28:47 2010 +0100
@@ -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);