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

Commit 50784ef9 authored by Amith Yamasani's avatar Amith Yamasani Committed by android-build-merger
Browse files

Merge "Reduce calls to updateOomAdj() during unbind" into qt-dev

am: 76236ec3

Change-Id: I1da980297590e8ecc4a10dd05ade4090649d7eae
parents 6af750a4 76236ec3
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -1946,8 +1946,6 @@ public final class ActiveServices {
                                r.binding.service.app.hasClientActivities()
                                || r.binding.service.app.treatLikeActivity, null);
                    }
                    mAm.updateOomAdjLocked(r.binding.service.app, false,
                            OomAdjuster.OOM_ADJ_REASON_UNBIND_SERVICE);
                }
            }

@@ -2906,6 +2904,7 @@ public final class ActiveServices {

        // Tell the service that it has been unbound.
        if (r.app != null && r.app.thread != null) {
            boolean needOomAdj = false;
            for (int i = r.bindings.size() - 1; i >= 0; i--) {
                IntentBindRecord ibr = r.bindings.valueAt(i);
                if (DEBUG_SERVICE) Slog.v(TAG_SERVICE, "Bringing down binding " + ibr
@@ -2913,8 +2912,7 @@ public final class ActiveServices {
                if (ibr.hasBound) {
                    try {
                        bumpServiceExecutingLocked(r, false, "bring down unbind");
                        mAm.updateOomAdjLocked(r.app, true,
                                OomAdjuster.OOM_ADJ_REASON_UNBIND_SERVICE);
                        needOomAdj = true;
                        ibr.hasBound = false;
                        ibr.requested = false;
                        r.app.thread.scheduleUnbindService(r,
@@ -2926,6 +2924,10 @@ public final class ActiveServices {
                    }
                }
            }
            if (needOomAdj) {
                mAm.updateOomAdjLocked(r.app, true,
                        OomAdjuster.OOM_ADJ_REASON_UNBIND_SERVICE);
            }
        }

        // Check to see if the service had been started as foreground, but being