diff options
Diffstat (limited to 'libs/gui/ScreenCaptureResults.cpp')
-rw-r--r-- | libs/gui/ScreenCaptureResults.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/libs/gui/ScreenCaptureResults.cpp b/libs/gui/ScreenCaptureResults.cpp index 2b29487268..f3849bcdcd 100644 --- a/libs/gui/ScreenCaptureResults.cpp +++ b/libs/gui/ScreenCaptureResults.cpp @@ -25,6 +25,14 @@ status_t ScreenCaptureResults::writeToParcel(android::Parcel* parcel) const { } else { SAFE_PARCEL(parcel->writeBool, false); } + + if (fence != Fence::NO_FENCE) { + SAFE_PARCEL(parcel->writeBool, true); + SAFE_PARCEL(parcel->write, *fence); + } else { + SAFE_PARCEL(parcel->writeBool, false); + } + SAFE_PARCEL(parcel->writeBool, capturedSecureLayers); SAFE_PARCEL(parcel->writeUint32, static_cast<uint32_t>(capturedDataspace)); SAFE_PARCEL(parcel->writeInt32, result); @@ -39,6 +47,13 @@ status_t ScreenCaptureResults::readFromParcel(const android::Parcel* parcel) { SAFE_PARCEL(parcel->read, *buffer); } + bool hasFence; + SAFE_PARCEL(parcel->readBool, &hasFence); + if (hasFence) { + fence = new Fence(); + SAFE_PARCEL(parcel->read, *fence); + } + SAFE_PARCEL(parcel->readBool, &capturedSecureLayers); uint32_t dataspace = 0; SAFE_PARCEL(parcel->readUint32, &dataspace); |