serviceproviders/sapi_messaging/messagingservice/src/sendmessage.cpp
branchRCL_3
changeset 59 1aa6688bfd6b
parent 33 50974a8b132e
child 65 0b68a1b0c15e
--- 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);