serviceproviders/sapi_messaging/messagingservice/src/sendmessage.cpp
branchRCL_3
changeset 45 a9c0808a1095
parent 44 0b68a1b0c15e
--- 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);