diff options
| author | 2018-11-08 16:29:13 -0800 | |
|---|---|---|
| committer | 2018-11-14 10:42:21 -0800 | |
| commit | ffde786ffce1afcd7ee574e7b45026d651ac1779 (patch) | |
| tree | c6ee2a9f13c21b0125653b897402b8f7ec72606b /services/bufferhub/BufferHubService.cpp | |
| parent | 18d90eaf05d8b3a21a68d84ebf23ea2326067aad (diff) | |
Add a service-unique ID to BufferNode
All the BufferNode allocated by bufferhub hwservice now will have a
unique ID generated and managed by the UniqueIdGenerator.
The idGenerator is placed in global static namespace because 1)
therefore it is process-unique 2) BufferNode could still access it
without a reference to the service instance.
Added UniqueIdGenerator_test.
Test: UniqueIdGenerator_test, BufferNode_test, buffer_hub-test,
BufferHubBuffer_test passed.
Fix: 118844348
Change-Id: I9c9adebab3af7b9de71dbe8728d3f24ed231338d
Diffstat (limited to 'services/bufferhub/BufferHubService.cpp')
| -rw-r--r-- | services/bufferhub/BufferHubService.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/services/bufferhub/BufferHubService.cpp b/services/bufferhub/BufferHubService.cpp index 3bfd9cbe7e..fc5ad1dbbf 100644 --- a/services/bufferhub/BufferHubService.cpp +++ b/services/bufferhub/BufferHubService.cpp @@ -35,7 +35,7 @@ Return<void> BufferHubService::allocateBuffer(const HardwareBufferDescription& d std::shared_ptr<BufferNode> node = std::make_shared<BufferNode>(desc.width, desc.height, desc.layers, desc.format, - desc.usage, userMetadataSize); + desc.usage, userMetadataSize, nodeIdGenerator.getId()); if (node == nullptr || !node->IsValid()) { ALOGE("%s: creating BufferNode failed.", __FUNCTION__); _hidl_cb(/*bufferClient=*/nullptr, /*status=*/BufferHubStatus::ALLOCATION_FAILED); |