Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e58049a3 authored by JW Wang's avatar JW Wang Committed by Songchun Fan
Browse files

Fix NPE

NPE happens when there is an orphaned session which we've
tried to prevent in all cases.

Log an error message if this situation happens.

Bug: 227342978
Test: atest CtsRootPackageInstallerHostTestCases
Change-Id: Ia21323926bd9db1a6f05461904deb45b4c3dd0bc
(cherry picked from commit 07e31dfb)
Merged-In: Ia21323926bd9db1a6f05461904deb45b4c3dd0bc
parent 49903f64
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -347,7 +347,10 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements
                    // Their staging dirs will be removed too
                    PackageInstallerSession root = !session.hasParentSessionId()
                            ? session : mSessions.get(session.getParentSessionId());
                    if (!root.isDestroyed()) {
                    if (root == null) {
                        Slog.e(TAG, "freeStageDirs: found an orphaned session: "
                                + session.sessionId + " parent=" + session.getParentSessionId());
                    } else if (!root.isDestroyed()) {
                        root.abandon();
                    }
                } else {