Fix job scheduler crash due to uninstall race am: 652c5ad516

am: 1131f280ae

Change-Id: I7fe35fd1c07a21dc3552218d8865d9f59416e9be
This commit is contained in:
Christopher Tate
2016-10-06 21:47:02 +00:00
committed by android-build-merger

View File

@@ -429,7 +429,18 @@ public final class JobSchedulerService extends com.android.server.SystemService
}
cancelJobsForUid(pkgUid, true);
}
} catch (RemoteException e) { /* cannot happen */ }
} catch (RemoteException|IllegalArgumentException e) {
/*
* IllegalArgumentException means that the package doesn't exist.
* This arises when PACKAGE_CHANGED broadcast delivery has lagged
* behind outright uninstall, so by the time we try to act it's gone.
* We don't need to act on this PACKAGE_CHANGED when this happens;
* we'll get a PACKAGE_REMOVED later and clean up then.
*
* RemoteException can't actually happen; the package manager is
* running in this same process.
*/
}
break;
}
}