Update Parcel readLazyValue to ignore negative object lengths

Addresses a security vulnerability where a (-8) length object would
cause dataPosition to be reset back to the statt of the value, and be
re-read again.

Bug: 240138294
Test: atest ParcelTest BundleTest AmbiguousBundlesTest
Test: manually ran PoC
Change-Id: I1ab1df6f2a802d8cdf02c89c12959b09d7b1a5c4
Merged-In: I1ab1df6f2a802d8cdf02c89c12959b09d7b1a5c4
(cherry picked from commit 8e01230dd264d652c6f4c82d850da5afc4768bdc)
Merged-In: I1ab1df6f2a802d8cdf02c89c12959b09d7b1a5c4
1 file changed