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

Commit 8a4257e1 authored by Dianne Hackborn's avatar Dianne Hackborn Committed by Android Git Automerger
Browse files

am 723d3906: am a85c287d: am 0394c8bc: am c39f4fc2: am 5a9cfe3e: Merge "Maybe...

am 723d3906: am a85c287d: am 0394c8bc: am c39f4fc2: am 5a9cfe3e: Merge "Maybe fix issue #17614177 APR: system process restarting due to infinite loop" into lmp-dev

* commit '723d390690286c813b3a80e6fa3914cf60175ae9':
  Maybe fix issue #17614177 APR: system process restarting due to infinite loop
parents c2dd3f5a d96238d0
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -3570,6 +3570,10 @@ public final class ProcessStats implements Parcelable {
            return mOwner != null || mRestarting;
        }

        public boolean isRestarting() {
            return mRestarting;
        }

        void add(ServiceState other) {
            addDurations(other);
            mRunCount += other.mRunCount;
+5 −0
Original line number Diff line number Diff line
@@ -895,6 +895,11 @@ public final class ActiveServices {
            while (clist.size() > 0) {
                ConnectionRecord r = clist.get(0);
                removeConnectionLocked(r, null, null);
                if (clist.size() > 0 && clist.get(0) == r) {
                    // In case it didn't get removed above, do it now.
                    Slog.wtf(TAG, "Connection " + r + " not removed for binder " + binder);
                    clist.remove(0);
                }

                if (r.binding.service.app != null) {
                    // This could have made the service less important.
+3 −2
Original line number Diff line number Diff line
@@ -146,7 +146,9 @@ public final class ProcessStatsService extends IProcessStats.Stub {
                        final ArrayMap<String, ProcessStats.ServiceState> services = pkg.mServices;
                        for (int isvc=services.size()-1; isvc>=0; isvc--) {
                            final ProcessStats.ServiceState service = services.valueAt(isvc);
                            if (service.isInUse()) {
                            if (service.isRestarting()) {
                                service.setRestarting(true, memFactor, now);
                            } else if (service.isInUse()) {
                                if (service.mStartedState != ProcessStats.STATE_NOTHING) {
                                    service.setStarted(true, memFactor, now);
                                }
@@ -157,7 +159,6 @@ public final class ProcessStatsService extends IProcessStats.Stub {
                                    service.setExecuting(true, memFactor, now);
                                }
                            }

                        }
                    }
                }
+5 −3
Original line number Diff line number Diff line
@@ -5589,9 +5589,11 @@ public class PackageManagerService extends IPackageManager.Stub {
        // update the package settings accordingly.
        pkg.cpuAbiOverride = cpuAbiOverride;
        if (DEBUG_ABI_SELECTION) {
            Slog.d(TAG, "Resolved nativeLibraryRoot for " + pkg.applicationInfo.packageName
                    + " to root=" + pkg.applicationInfo.nativeLibraryRootDir + ", isa="
                    + pkg.applicationInfo.nativeLibraryRootRequiresIsa);
        }
        // Push the derived path down into PackageSettings so we know what to
        // clean up at uninstall time.