diff options
author | 2021-02-18 14:01:53 -0800 | |
---|---|---|
committer | 2021-03-11 11:05:37 -0800 | |
commit | 193426d6c539d4638d6416e9e0caaa62f18fa7ac (patch) | |
tree | 25945343f0ee48e560c7ac20b26470cebefb717d /libs/renderengine/RenderEngine.cpp | |
parent | 30c6ac31bd18b9ea045cf39b125a5fb145300248 (diff) |
SF: add buffer checks to Render Engine
Make sure that both input and output buffers are GPU accessible
before Render Engine tries to do something with the buffers.
Test: Boot, launch an app, take a screenshot
Bug: 158790260
Change-Id: I905a670f6cc2d419b49fe79694df6e71d60a2a92
Diffstat (limited to 'libs/renderengine/RenderEngine.cpp')
-rw-r--r-- | libs/renderengine/RenderEngine.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libs/renderengine/RenderEngine.cpp b/libs/renderengine/RenderEngine.cpp index 79839c1f91..0c5a851c41 100644 --- a/libs/renderengine/RenderEngine.cpp +++ b/libs/renderengine/RenderEngine.cpp @@ -85,5 +85,15 @@ std::unique_ptr<RenderEngine> RenderEngine::create(const RenderEngineCreationArg RenderEngine::~RenderEngine() = default; +void RenderEngine::validateInputBufferUsage(const sp<GraphicBuffer>& buffer) { + LOG_ALWAYS_FATAL_IF(!(buffer->getUsage() & GraphicBuffer::USAGE_HW_TEXTURE), + "input buffer not gpu readable"); +} + +void RenderEngine::validateOutputBufferUsage(const sp<GraphicBuffer>& buffer) { + LOG_ALWAYS_FATAL_IF(!(buffer->getUsage() & GraphicBuffer::USAGE_HW_RENDER), + "output buffer not gpu writeable"); +} + } // namespace renderengine } // namespace android |