summaryrefslogtreecommitdiff
path: root/libs/gui/BLASTBufferQueue.cpp
diff options
context:
space:
mode:
author Snild Dolkow <snild@sony.com> 2023-07-14 12:43:35 +0200
committer Dominik Laskowski <domlaskowski@google.com> 2023-08-01 17:02:00 -0400
commit8d675649a60fa64b07fd3d41710d924c4405d933 (patch)
tree4ac327fa1679e1f57b24f4e63cf3cafdd3735836 /libs/gui/BLASTBufferQueue.cpp
parentb7a9610d164f8cb23810ef63073eb83cdc7bb3d4 (diff)
Let missing DeviceProductInfo pass through AIDL
On the way between SurfaceFlinger and DisplayManager, there are two conversions done between the old and new StaticDisplayInfo types. Neither of these conversions were checking that the incoming optional DeviceProductInfo did indeed have a value before reading it. Dereferencing an empty optional is undefined behavior. In practice, the converters read zeroes, causing the output to have info fields with present-but-invalid content. On devices that do not provide DeviceProductInfo, DisplayManager got a model year of 0, making DisplayTest#testGetDeviceProductInfo fail. Fixes: 291101831 Fixes: 283031260 Fixes: 286718808 Test: cts DisplayTest#testGetDeviceProductInfo Change-Id: I118a1ce6459697ce471cdec75d156adad479c654
Diffstat (limited to 'libs/gui/BLASTBufferQueue.cpp')
0 files changed, 0 insertions, 0 deletions