summaryrefslogtreecommitdiff
path: root/libs/ui/BufferHubBuffer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ui/BufferHubBuffer.cpp')
-rw-r--r--libs/ui/BufferHubBuffer.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/ui/BufferHubBuffer.cpp b/libs/ui/BufferHubBuffer.cpp
index 4b3d3ba06e..4b20772b75 100644
--- a/libs/ui/BufferHubBuffer.cpp
+++ b/libs/ui/BufferHubBuffer.cpp
@@ -318,6 +318,11 @@ int BufferHubBuffer::Release() {
return 0;
}
+bool BufferHubBuffer::IsReleased() const {
+ return (buffer_state_->load(std::memory_order_acquire) &
+ active_clients_bit_mask_->load(std::memory_order_acquire)) == 0;
+}
+
bool BufferHubBuffer::IsValid() const {
return mBufferHandle.getNativeHandle() != nullptr && mId >= 0 && mClientStateMask != 0U &&
mEventFd.get() >= 0 && mMetadata.IsValid() && mBufferClient != nullptr;