ncdengine/provider/deviceinteraction/src/ncdinstallationserviceimpl.cpp
branchRCL_3
changeset 27 e8965914fac7
parent 26 8b7f4e561641
--- a/ncdengine/provider/deviceinteraction/src/ncdinstallationserviceimpl.cpp	Wed Sep 01 12:22:02 2010 +0100
+++ b/ncdengine/provider/deviceinteraction/src/ncdinstallationserviceimpl.cpp	Tue Sep 14 21:31:28 2010 +0300
@@ -2359,7 +2359,20 @@
             CWidgetPropertyValue* version = 
                 iWidgetRegistry.GetWidgetPropertyValueL(aUid, EBundleVersion );
             CleanupStack::PushL( version );
-            TCatalogsVersion::ConvertL( aVersion, *(version->iValue.s) );
+            
+            // Convert version
+            if (version->iValue.s)
+                {
+                TCatalogsVersion::ConvertL( aVersion, *(version->iValue.s) );
+                }
+            else
+                {
+                // version does not exist, set default (0.0.1)
+                aVersion.iMajor = 0;
+                aVersion.iMinor = 0;
+                aVersion.iBuild = 1;
+                }
+
             CleanupStack::PopAndDestroy( version ); 
             return (ETrue);
             }
@@ -2403,11 +2416,24 @@
         
         if( aIdentifier.Compare( *(bundleId->iValue.s) )== 0 )
             {
+            // Get version
             CWidgetPropertyValue* version = 
                 iWidgetRegistry.GetWidgetPropertyValueL
                     (widgetInfo->iUid, EBundleVersion );
             CleanupStack::PushL( version );
-            TCatalogsVersion::ConvertL( aVersion, *(version->iValue.s) );
+            
+            // Convert version
+            if (version->iValue.s)
+                {
+                TCatalogsVersion::ConvertL( aVersion, *(version->iValue.s) );
+                }
+            else
+                {
+                // version does not exist, set default (0.0.1)
+                aVersion.iMajor = 0;
+                aVersion.iMinor = 0;
+                aVersion.iBuild = 1;
+                }
             
             CleanupStack::PopAndDestroy( version );
             CleanupStack::PopAndDestroy( bundleId );