graphics: sideband streams are not buffers
We should call native_handle_clone instead of IMapper::importBuffer
on sideband stream handles.
Bug: 63707399
Test: manual
Change-Id: Ie07e50f6bb771f3c7a69d29e36f60b149dc6af95
diff --git a/graphics/composer/2.1/default/ComposerClient.cpp b/graphics/composer/2.1/default/ComposerClient.cpp
index 5a96e29..e792034 100644
--- a/graphics/composer/2.1/default/ComposerClient.cpp
+++ b/graphics/composer/2.1/default/ComposerClient.cpp
@@ -1149,6 +1149,13 @@
// input handle is ignored
*outHandle = entry->getHandle();
+ } else if (cache == BufferCache::LAYER_SIDEBAND_STREAMS) {
+ if (handle) {
+ *outHandle = native_handle_clone(handle);
+ if (*outHandle == nullptr) {
+ return Error::NO_RESOURCES;
+ }
+ }
} else {
if (!sHandleImporter.importBuffer(handle)) {
return Error::NO_RESOURCES;