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

Commit cf5c3ee2 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "libbinder_ndk: more accurate error for array allocator failure" am:...

Merge "libbinder_ndk: more accurate error for array allocator failure" am: b1fd297a am: 901b2e1a am: 41df6d22

Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2304973



Change-Id: I2b1117deab522ccd8ee3d3a21288ea467b9d452d
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents d1c4b8ab 41df6d22
Loading
Loading
Loading
Loading
+21 −3
Original line number Diff line number Diff line
@@ -129,7 +129,13 @@ binder_status_t ReadArray(const AParcel* parcel, void* arrayData,
    }

    T* array;
    if (!allocator(arrayData, length, &array)) return STATUS_NO_MEMORY;
    if (!allocator(arrayData, length, &array)) {
        if (length < 0) {
            return STATUS_UNEXPECTED_NULL;
        } else {
            return STATUS_NO_MEMORY;
        }
    }

    if (length <= 0) return STATUS_OK;
    if (array == nullptr) return STATUS_NO_MEMORY;
@@ -157,7 +163,13 @@ binder_status_t ReadArray<char16_t>(const AParcel* parcel, void* arrayData,
    }

    char16_t* array;
    if (!allocator(arrayData, length, &array)) return STATUS_NO_MEMORY;
    if (!allocator(arrayData, length, &array)) {
        if (length < 0) {
            return STATUS_UNEXPECTED_NULL;
        } else {
            return STATUS_NO_MEMORY;
        }
    }

    if (length <= 0) return STATUS_OK;
    if (array == nullptr) return STATUS_NO_MEMORY;
@@ -204,7 +216,13 @@ binder_status_t ReadArray(const AParcel* parcel, void* arrayData, ArrayAllocator
        return status;
    }

    if (!allocator(arrayData, length)) return STATUS_NO_MEMORY;
    if (!allocator(arrayData, length)) {
        if (length < 0) {
            return STATUS_UNEXPECTED_NULL;
        } else {
            return STATUS_NO_MEMORY;
        }
    }

    if (length <= 0) return STATUS_OK;