Loading services/core/java/com/android/server/pm/PackageInstallerSession.java +15 −3 Original line number Diff line number Diff line Loading @@ -1488,6 +1488,10 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { } private void onDataLoaderUnrecoverable() { if (TextUtils.isEmpty(mPackageName)) { // The package has not been installed. return; } final PackageManagerService packageManagerService = mPm; final String packageName = mPackageName; mHandler.post(() -> { Loading Loading @@ -2610,12 +2614,14 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { case IDataLoaderStatusListener.DATA_LOADER_STOPPED: case IDataLoaderStatusListener.DATA_LOADER_DESTROYED: return; } if (mDestroyed || mDataLoaderFinished) { switch (status) { case IDataLoaderStatusListener.DATA_LOADER_UNRECOVERABLE: onDataLoaderUnrecoverable(); return; } if (mDestroyed || mDataLoaderFinished) { return; } Loading Loading @@ -2678,6 +2684,12 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { } break; } case IDataLoaderStatusListener.DATA_LOADER_UNRECOVERABLE: mDataLoaderFinished = true; onSessionVerificationFailure( new PackageManagerException(INSTALL_FAILED_MEDIA_UNAVAILABLE, "DataLoader reported unrecoverable failure.")); return; } } catch (RemoteException e) { // In case of streaming failure we don't want to fail or commit the session. Loading Loading
services/core/java/com/android/server/pm/PackageInstallerSession.java +15 −3 Original line number Diff line number Diff line Loading @@ -1488,6 +1488,10 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { } private void onDataLoaderUnrecoverable() { if (TextUtils.isEmpty(mPackageName)) { // The package has not been installed. return; } final PackageManagerService packageManagerService = mPm; final String packageName = mPackageName; mHandler.post(() -> { Loading Loading @@ -2610,12 +2614,14 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { case IDataLoaderStatusListener.DATA_LOADER_STOPPED: case IDataLoaderStatusListener.DATA_LOADER_DESTROYED: return; } if (mDestroyed || mDataLoaderFinished) { switch (status) { case IDataLoaderStatusListener.DATA_LOADER_UNRECOVERABLE: onDataLoaderUnrecoverable(); return; } if (mDestroyed || mDataLoaderFinished) { return; } Loading Loading @@ -2678,6 +2684,12 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { } break; } case IDataLoaderStatusListener.DATA_LOADER_UNRECOVERABLE: mDataLoaderFinished = true; onSessionVerificationFailure( new PackageManagerException(INSTALL_FAILED_MEDIA_UNAVAILABLE, "DataLoader reported unrecoverable failure.")); return; } } catch (RemoteException e) { // In case of streaming failure we don't want to fail or commit the session. Loading