Loading services/core/java/com/android/server/pm/PackageInstallerService.java +2 −2 Original line number Diff line number Diff line Loading @@ -402,10 +402,10 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements } finally { IoUtils.closeQuietly(fis); } // Re-sealing the sealed sessions. // After all of the sessions were loaded, they are ready to be sealed and validated for (int i = 0; i < mSessions.size(); ++i) { PackageInstallerSession session = mSessions.valueAt(i); session.sealIfNecessary(); session.sealAndValidateIfNecessary(); } } Loading services/core/java/com/android/server/pm/PackageInstallerSession.java +8 −4 Original line number Diff line number Diff line Loading @@ -1360,13 +1360,15 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { } /** * If session should be sealed, then it's sealed to prevent further modification. * If the session can't be sealed then it's destroyed. * If session should be sealed, then it's sealed to prevent further modification * and then it's validated. * * If the session was sealed but something went wrong then it's destroyed. * * <p> This is meant to be called after all of the sessions are loaded and added to * PackageInstallerService */ void sealIfNecessary() { void sealAndValidateIfNecessary() { synchronized (mLock) { if (!mShouldBeSealed || isStagedAndInTerminalState()) { return; Loading @@ -1375,7 +1377,9 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { List<PackageInstallerSession> childSessions = getChildSessions(); synchronized (mLock) { try { sealLocked(childSessions); sealAndValidateLocked(childSessions); } catch (StreamingException e) { Slog.e(TAG, "Streaming failed", e); } catch (PackageManagerException e) { Slog.e(TAG, "Package not valid", e); } Loading Loading
services/core/java/com/android/server/pm/PackageInstallerService.java +2 −2 Original line number Diff line number Diff line Loading @@ -402,10 +402,10 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements } finally { IoUtils.closeQuietly(fis); } // Re-sealing the sealed sessions. // After all of the sessions were loaded, they are ready to be sealed and validated for (int i = 0; i < mSessions.size(); ++i) { PackageInstallerSession session = mSessions.valueAt(i); session.sealIfNecessary(); session.sealAndValidateIfNecessary(); } } Loading
services/core/java/com/android/server/pm/PackageInstallerSession.java +8 −4 Original line number Diff line number Diff line Loading @@ -1360,13 +1360,15 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { } /** * If session should be sealed, then it's sealed to prevent further modification. * If the session can't be sealed then it's destroyed. * If session should be sealed, then it's sealed to prevent further modification * and then it's validated. * * If the session was sealed but something went wrong then it's destroyed. * * <p> This is meant to be called after all of the sessions are loaded and added to * PackageInstallerService */ void sealIfNecessary() { void sealAndValidateIfNecessary() { synchronized (mLock) { if (!mShouldBeSealed || isStagedAndInTerminalState()) { return; Loading @@ -1375,7 +1377,9 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { List<PackageInstallerSession> childSessions = getChildSessions(); synchronized (mLock) { try { sealLocked(childSessions); sealAndValidateLocked(childSessions); } catch (StreamingException e) { Slog.e(TAG, "Streaming failed", e); } catch (PackageManagerException e) { Slog.e(TAG, "Package not valid", e); } Loading