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

Commit 76236ec3 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

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

parents 1422232c 66eb785a
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