Merge "Proper handling of unrecoverable status." into rvc-dev am: c7b99da139 am: e61c4a0384 am: 5ed4395bb2
Change-Id: Ib976f7efa1c03a471eaf177500419192dee59354
This commit is contained in:
@@ -1488,6 +1488,10 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void onDataLoaderUnrecoverable() {
|
private void onDataLoaderUnrecoverable() {
|
||||||
|
if (TextUtils.isEmpty(mPackageName)) {
|
||||||
|
// The package has not been installed.
|
||||||
|
return;
|
||||||
|
}
|
||||||
final PackageManagerService packageManagerService = mPm;
|
final PackageManagerService packageManagerService = mPm;
|
||||||
final String packageName = mPackageName;
|
final String packageName = mPackageName;
|
||||||
mHandler.post(() -> {
|
mHandler.post(() -> {
|
||||||
@@ -2610,12 +2614,14 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub {
|
|||||||
case IDataLoaderStatusListener.DATA_LOADER_STOPPED:
|
case IDataLoaderStatusListener.DATA_LOADER_STOPPED:
|
||||||
case IDataLoaderStatusListener.DATA_LOADER_DESTROYED:
|
case IDataLoaderStatusListener.DATA_LOADER_DESTROYED:
|
||||||
return;
|
return;
|
||||||
case IDataLoaderStatusListener.DATA_LOADER_UNRECOVERABLE:
|
|
||||||
onDataLoaderUnrecoverable();
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mDestroyed || mDataLoaderFinished) {
|
if (mDestroyed || mDataLoaderFinished) {
|
||||||
|
switch (status) {
|
||||||
|
case IDataLoaderStatusListener.DATA_LOADER_UNRECOVERABLE:
|
||||||
|
onDataLoaderUnrecoverable();
|
||||||
|
return;
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2678,6 +2684,12 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case IDataLoaderStatusListener.DATA_LOADER_UNRECOVERABLE:
|
||||||
|
mDataLoaderFinished = true;
|
||||||
|
onSessionVerificationFailure(
|
||||||
|
new PackageManagerException(INSTALL_FAILED_MEDIA_UNAVAILABLE,
|
||||||
|
"DataLoader reported unrecoverable failure."));
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
} catch (RemoteException e) {
|
} catch (RemoteException e) {
|
||||||
// In case of streaming failure we don't want to fail or commit the session.
|
// In case of streaming failure we don't want to fail or commit the session.
|
||||||
|
|||||||
Reference in New Issue
Block a user