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

Commit 79e90c53 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fix issues with getHistoricalOps() results overflowing Binder...

Merge "Fix issues with getHistoricalOps() results overflowing Binder connection." into sc-dev am: 38e2d409

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14440241

Change-Id: I2c2c305abf040d6cf3d696eee380b557407a40e9
parents ab7f2c52 38e2d409
Loading
Loading
Loading
Loading
+7 −20
Original line number Diff line number Diff line
@@ -6854,7 +6854,7 @@ public class AppOpsManager {
            writeLongSparseLongArrayToParcel(mAccessCount, parcel);
            writeLongSparseLongArrayToParcel(mRejectCount, parcel);
            writeLongSparseLongArrayToParcel(mAccessDuration, parcel);
            writeDiscreteAccessArrayToParcel(mDiscreteAccesses, parcel);
            writeDiscreteAccessArrayToParcel(mDiscreteAccesses, parcel, flags);
        }

        @Override
@@ -9711,29 +9711,16 @@ public class AppOpsManager {
    }

    private static void writeDiscreteAccessArrayToParcel(
            @Nullable List<AttributedOpEntry> array, @NonNull Parcel parcel) {
        if (array != null) {
            final int size = array.size();
            parcel.writeInt(size);
            for (int i = 0; i < size; i++) {
                array.get(i).writeToParcel(parcel, 0);
            }
        } else {
            parcel.writeInt(-1);
        }
            @Nullable List<AttributedOpEntry> array, @NonNull Parcel parcel, int flags) {
        ParceledListSlice<AttributedOpEntry> listSlice =
                array == null ? null : new ParceledListSlice<>(array);
        parcel.writeParcelable(listSlice, flags);
    }

    private static @Nullable List<AttributedOpEntry> readDiscreteAccessArrayFromParcel(
            @NonNull Parcel parcel) {
        final int size = parcel.readInt();
        if (size < 0) {
            return null;
        }
        final List<AttributedOpEntry> array = new ArrayList<>(size);
        for (int i = 0; i < size; i++) {
            array.add(new AttributedOpEntry(parcel));
        }
        return array;
        final ParceledListSlice<AttributedOpEntry> listSlice = parcel.readParcelable(null);
        return listSlice == null ? null : listSlice.getList();
    }

    /**