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

Commit 22449c1d authored by Jeff Brown's avatar Jeff Brown Committed by Android Git Automerger
Browse files

am 1bcc845f: am ca583f09: Merge "Fixed some minor bugs in MotionEvent recycling." into kraken

parents 1a26b6a3 1bcc845f
Loading
Loading
Loading
Loading
+12 −7
Original line number Diff line number Diff line
@@ -255,18 +255,20 @@ public final class MotionEvent implements Parcelable {
    }

    static private MotionEvent obtain() {
        final MotionEvent ev;
        synchronized (gRecyclerLock) {
            if (gRecyclerTop == null) {
                return new MotionEvent();
            }
            MotionEvent ev = gRecyclerTop;
            ev = gRecyclerTop;
            gRecyclerTop = ev.mNext;
            gRecyclerUsed--;
        }
        ev.mRecycledLocation = null;
        ev.mRecycled = false;
        ev.mNext = null;
        return ev;
    }
    }

    /**
     * Create a new MotionEvent, filling in all of the basic values that
@@ -620,11 +622,14 @@ public final class MotionEvent implements Parcelable {
                throw new RuntimeException(toString() + " recycled twice!", mRecycledLocation);
            }
            mRecycledLocation = new RuntimeException("Last recycled here");
        } else if (mRecycled) {
            //Log.w("MotionEvent", "Recycling event " + this, mRecycledLocation);
        } else {
            if (mRecycled) {
                throw new RuntimeException(toString() + " recycled twice!");
            }
            mRecycled = true;
        }

        //Log.w("MotionEvent", "Recycling event " + this, mRecycledLocation);
        synchronized (gRecyclerLock) {
            if (gRecyclerUsed < MAX_RECYCLED) {
                gRecyclerUsed++;