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

Commit 55b6b984 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: I24ea1108dbf52b077b0d7143b726a6fa8dc05617
parents 8ab2a209 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();
    }

    /**