diff options
| author | 2024-09-16 21:05:49 -0700 | |
|---|---|---|
| committer | 2024-09-27 16:44:07 -0700 | |
| commit | e2543234e187a9ad8fdaca10445250e14b807684 (patch) | |
| tree | 81aac51c4a6a0b99d46a1cc0ce22d10c3f5e00e0 /libs/gui/ConsumerBase.cpp | |
| parent | 2ba61c41dd5f2bde4da6a26cdb619c8778a265e9 (diff) | |
binder: fix decoding of vintf stability ParcelableHolder
Unlike the C++ implementation, `ParcelableHolder`s in rust are decoded
into a new object. The new object was losing the original stability
level, always reverting to local stability, so vintf parcelables would
fail the assertion.
We could replicate the C++ implementation, but it would require a lot of
API refactoring and it is easy to mess up. Instead, we make the
stability part of the type. This somewhat matches AIDL, where the
stability is a static annotation on the type containing the
`ParcelableHolder`.
Bug: 366383257
Test: m
Change-Id: Ic4654830d404fbf18046660eeb0129ab8abf7e61
Diffstat (limited to 'libs/gui/ConsumerBase.cpp')
0 files changed, 0 insertions, 0 deletions