More on issue #12031685 (DO NOT MERGE)

Integrate from master:

Fix issue #13065185: Frequent runtime restarts on launching...

..."Hill Climb Racing" app

A service is in use when it is in the restarting state.

Change-Id: Iffdea96f867f89089e7ad07b4b1bef056951a5e8
This commit is contained in:
Dianne Hackborn
2014-03-06 17:39:11 -08:00
parent 430652c1e1
commit cb15c7a83b

View File

@ -1004,7 +1004,7 @@ public final class ProcessStats implements Parcelable {
for (int iproc=pkgState.mProcesses.size()-1; iproc>=0; iproc--) {
ProcessState ps = pkgState.mProcesses.valueAt(iproc);
if (ps.isInUse() || ps.mCommonProcess.isInUse()) {
pkgState.mProcesses.valueAt(iproc).resetSafely(now);
ps.resetSafely(now);
} else {
pkgState.mProcesses.valueAt(iproc).makeDead();
pkgState.mProcesses.removeAt(iproc);
@ -1013,7 +1013,7 @@ public final class ProcessStats implements Parcelable {
for (int isvc=pkgState.mServices.size()-1; isvc>=0; isvc--) {
ServiceState ss = pkgState.mServices.valueAt(isvc);
if (ss.isInUse()) {
pkgState.mServices.valueAt(isvc).resetSafely(now);
ss.resetSafely(now);
} else {
pkgState.mServices.removeAt(isvc);
}
@ -3014,7 +3014,7 @@ public final class ProcessStats implements Parcelable {
}
public boolean isInUse() {
return mOwner != null;
return mOwner != null || mRestarting;
}
void add(ServiceState other) {