Fix the crash while installing of ServiceApp
authorhb.min <hb.min@samsung.com>
Thu, 28 Mar 2013 02:19:15 +0000 (11:19 +0900)
committerhb.min <hb.min@samsung.com>
Thu, 28 Mar 2013 06:02:48 +0000 (15:02 +0900)
Change-Id: Idfa5c0fc83767e1fa7f73863379cb23320884099
Signed-off-by: hb.min <hb.min@samsung.com>
inc/InstallerDefs.h
src/Step/SignatureStep.cpp
src/XmlHandler/ManifestHandler.cpp

index e7478a5..428c35f 100755 (executable)
@@ -23,7 +23,7 @@
 
 #include "InstallerUtil.h"
 
-#define OSP_INSTALLER_VERSION "version=[20130326.2]"
+#define OSP_INSTALLER_VERSION "version=[20130328.1]"
 
 #define DIR_BIN                                L"/bin"
 #define DIR_INFO                       L"/info"
index 460620b..96b006a 100755 (executable)
@@ -168,8 +168,11 @@ SignatureStep::OnStateRootCert(void)
 
        AppLog("PackageId = [%ls], CertType = [%d], ApiVisibility = [%d]", packageId.GetPointer(), certType, apiVisibility);
 
-       r = PrivilegeHandler::GenerateCipherPrivilege(packageId, *pPrivilegeList, apiVisibility, privileges, hmacPrivileges, stringPrivilegeList);
-       TryCatch(!IsFailed(r), error = INSTALLER_ERROR_PRIVILEGE_INVALID, "privMgr.GeneratePrivilegeString() failed");
+       if (pPrivilegeList != null)
+       {
+               r = PrivilegeHandler::GenerateCipherPrivilege(packageId, *pPrivilegeList, apiVisibility, privileges, hmacPrivileges, stringPrivilegeList);
+               TryCatch(!IsFailed(r), error = INSTALLER_ERROR_PRIVILEGE_INVALID, "privMgr.GeneratePrivilegeString() failed");
+       }
 
        __pContext->__privileges = privileges;
        __pContext->__hmacPrivileges = hmacPrivileges;
index e10896d..65c52d5 100755 (executable)
@@ -677,8 +677,12 @@ ManifestHandler::OnPrivilegesEndElement(void)
                ArrayList stringPrivilegeList;
                stringPrivilegeList.Construct(125);
                PackageId packageId = __pContext->__packageId;
-               r = PrivilegeHandler::GenerateCipherPrivilege(packageId, *__pPrivilegeList, privileges, hmacPrivileges, stringPrivilegeList);
-               TryReturn(!IsFailed(r), false, "privMgr.GeneratePrivilegeString() failed");
+
+               if (__pPrivilegeList != null)
+               {
+                       r = PrivilegeHandler::GenerateCipherPrivilege(packageId, *__pPrivilegeList, privileges, hmacPrivileges, stringPrivilegeList);
+                       TryReturn(!IsFailed(r), false, "privMgr.GeneratePrivilegeString() failed");
+               }
 
                __pContext->__privileges = privileges;
                __pContext->__hmacPrivileges = hmacPrivileges;