diff -r 0fdb7f6b0309 -r 7645e9ce10dc appfw/apparchitecture/aplist/aplappregfinder.cpp --- a/appfw/apparchitecture/aplist/aplappregfinder.cpp Fri Feb 19 22:58:54 2010 +0200 +++ b/appfw/apparchitecture/aplist/aplappregfinder.cpp Fri Mar 12 15:43:21 2010 +0200 @@ -1,4 +1,4 @@ -// Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies). // All rights reserved. // This component and the accompanying materials are made available // under the terms of "Eclipse Public License v1.0" @@ -186,9 +186,14 @@ TParse regFileNameParser; const TDriveName driveName = currentDrive.iUnit.Name(); regFileNameParser.Set(entry.iName, &appFolderOnDrive, &driveName); - - // If the appliation is located on a removable drive... - if (currentDrive.iAttribs&KDriveAttRemovable) + + // Apparc will call sidchecker to verify if an application is a valid registered application. + // Apparc will call sidchecker in the following conditions + // 1. If the current drive is a removable drive + // 2. If the current drive is not + // a) an internal read-only drive + // b) the system drive + if(currentDrive.iAttribs&KDriveAttRemovable || ((currentDrive.iUnit != iFs.GetSystemDrive()) && (currentDrive.iAttribs&KDriveAttInternal) && !(currentDrive.iAttribs&KDriveAttRom))) { // ...then verify that there is a valid Secure ID (SID) for the appliation // to protect against untrusted applications.