diff options
Diffstat (limited to 'drm/DrmDisplayPipeline.cpp')
-rw-r--r-- | drm/DrmDisplayPipeline.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drm/DrmDisplayPipeline.cpp b/drm/DrmDisplayPipeline.cpp index e81544d..1a8ad5b 100644 --- a/drm/DrmDisplayPipeline.cpp +++ b/drm/DrmDisplayPipeline.cpp @@ -98,7 +98,7 @@ static auto TryCreatePipeline(DrmDevice &dev, DrmConnector &connector, return {}; } - pipe->atomic_state_manager = std::make_unique<DrmAtomicStateManager>( + pipe->atomic_state_manager = DrmAtomicStateManager::CreateInstance( pipe.get()); return pipe; @@ -171,9 +171,9 @@ auto DrmDisplayPipeline::GetUsablePlanes() std::vector<std::shared_ptr<BindingOwner<DrmPlane>>> planes; planes.emplace_back(primary_plane); - static bool use_overlay_planes = ReadUseOverlayProperty(); + const static bool kUseOverlayPlanes = ReadUseOverlayProperty(); - if (use_overlay_planes) { + if (kUseOverlayPlanes) { for (const auto &plane : device->GetPlanes()) { if (plane->IsCrtcSupported(*crtc->Get())) { if (plane->GetType() == DRM_PLANE_TYPE_OVERLAY) { @@ -189,4 +189,9 @@ auto DrmDisplayPipeline::GetUsablePlanes() return planes; } +DrmDisplayPipeline::~DrmDisplayPipeline() { + if (atomic_state_manager) + atomic_state_manager->StopThread(); +} + } // namespace android |