summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author David Fu <davfu@google.com> 2022-08-03 18:12:20 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2022-08-03 18:12:20 +0000
commitb33a8aa55e36b4fca1b9be5836ed7c26fa2db30f (patch)
treee20f1907bfa7eab77edf7c25d592daa6c99a8486
parentd5107dd3d8c5dd0dd484f9302704b06d6c0ff4e4 (diff)
parentc0935e2c8515b8697defc846ec4b8b92d91ff0b2 (diff)
Merge "surfaceflinger_displayhardware_fuzzer: Bug Fix"
-rw-r--r--services/surfaceflinger/fuzzer/surfaceflinger_displayhardware_fuzzer.cpp3
-rw-r--r--services/surfaceflinger/fuzzer/surfaceflinger_fuzzers_utils.h4
2 files changed, 5 insertions, 2 deletions
diff --git a/services/surfaceflinger/fuzzer/surfaceflinger_displayhardware_fuzzer.cpp b/services/surfaceflinger/fuzzer/surfaceflinger_displayhardware_fuzzer.cpp
index b17e2c81aa..fae916542a 100644
--- a/services/surfaceflinger/fuzzer/surfaceflinger_displayhardware_fuzzer.cpp
+++ b/services/surfaceflinger/fuzzer/surfaceflinger_displayhardware_fuzzer.cpp
@@ -116,7 +116,8 @@ static constexpr hal::HWConfigId kActiveConfig = 0;
class DisplayHardwareFuzzer {
public:
DisplayHardwareFuzzer(const uint8_t* data, size_t size) : mFdp(data, size) {
- mPhysicalDisplayId = SurfaceComposerClient::getInternalDisplayId().value();
+ mPhysicalDisplayId = SurfaceComposerClient::getInternalDisplayId().value_or(
+ PhysicalDisplayId::fromPort(mFdp.ConsumeIntegral<uint8_t>()));
};
void process();
diff --git a/services/surfaceflinger/fuzzer/surfaceflinger_fuzzers_utils.h b/services/surfaceflinger/fuzzer/surfaceflinger_fuzzers_utils.h
index 75ebed9f1f..c592358566 100644
--- a/services/surfaceflinger/fuzzer/surfaceflinger_fuzzers_utils.h
+++ b/services/surfaceflinger/fuzzer/surfaceflinger_fuzzers_utils.h
@@ -529,7 +529,9 @@ public:
ui::PixelFormat pixelFormat{};
mFlinger->getHwComposer().allocateVirtualDisplay(halVirtualDisplayId, uiSize, &pixelFormat);
- PhysicalDisplayId physicalDisplayId = SurfaceComposerClient::getInternalDisplayId().value();
+ PhysicalDisplayId physicalDisplayId =
+ SurfaceComposerClient::getInternalDisplayId().value_or(
+ PhysicalDisplayId::fromPort(fdp->ConsumeIntegral<uint8_t>()));
mFlinger->getHwComposer().allocatePhysicalDisplay(kHwDisplayId, physicalDisplayId);
sp<IBinder> display =