javacommons/utils/src.s60/properties.cpp
changeset 79 2f468c1958d0
parent 69 773449708c84
equal deleted inserted replaced
76:4ad59aaee882 79:2f468c1958d0
   101 jstring java::util::getLocaleImpl(JNIEnv* env)
   101 jstring java::util::getLocaleImpl(JNIEnv* env)
   102 {
   102 {
   103     JELOG2(EUtils);
   103     JELOG2(EUtils);
   104 
   104 
   105     // microedition.locale
   105     // microedition.locale
   106     ILOG1(EUtils, "User::Language: %d", User::Language()); 
   106     ILOG1(EUtils, "User::Language: %d", User::Language());
   107     // KDialectMask enables support for operator specific language variants
   107     // KDialectMask enables support for operator specific language variants
   108     switch (User::Language() & KDialectMask) {
   108     switch (User::Language() & KDialectMask) {
   109         case ELangAfrikaans:
   109         case ELangAfrikaans:
   110             return S60CommonUtils::NativeToJavaString(*env, KMicroeditionLocaleAfrikaans);
   110             return S60CommonUtils::NativeToJavaString(*env, KMicroeditionLocaleAfrikaans);
   111         case ELangAlbanian:
   111         case ELangAlbanian:
   366     HBufC* platformName = NULL;
   366     HBufC* platformName = NULL;
   367 
   367 
   368     TBuf<KSysUtilVersionTextLength> swVersion;
   368     TBuf<KSysUtilVersionTextLength> swVersion;
   369     if (SysUtil::GetSWVersion(swVersion) == KErrNone && swVersion.Length()>0)
   369     if (SysUtil::GetSWVersion(swVersion) == KErrNone && swVersion.Length()>0)
   370     {
   370     {
   371         // Assume syntax V xx.xx\ndd-mm-yy\nNHL-vvv\n(c)Vendor
   371         // Assume syntax xx.xx\ndd-mm-yy\nNHL-vvv\n(c)Vendor
   372         TInt NLloc = swVersion.Locate('\n');
   372         TInt NLloc = swVersion.Locate('\n');
   373         TPtrC verPtr = swVersion.Mid(2, NLloc-2); // skip "V " in the beginning
   373         if (KErrNotFound == NLloc)
       
   374         {
       
   375             NLloc = swVersion.Length();  // no '\n' -> use whole string
       
   376         }
       
   377         TPtrC verPtr = swVersion.Left(NLloc);
   374 
   378 
   375         // Get platform minor and major version numbers
   379         // Get platform minor and major version numbers
   376         HBufC* platformVersionValue = GetPlatformVersionL();
   380         HBufC* platformVersionValue = GetPlatformVersionL();
   377         CleanupStack::PushL(platformVersionValue);
   381         CleanupStack::PushL(platformVersionValue);
   378 
   382