| Index: ui/ozone/platform/drm/host/drm_display_host_manager.cc
|
| diff --git a/ui/ozone/platform/drm/host/drm_display_host_manager.cc b/ui/ozone/platform/drm/host/drm_display_host_manager.cc
|
| index 0305559fbe6dc5f2be5afa5377042504b7fa6f35..3d7b7b4f245c81d4646f4651f7f9699753fa66e9 100644
|
| --- a/ui/ozone/platform/drm/host/drm_display_host_manager.cc
|
| +++ b/ui/ozone/platform/drm/host/drm_display_host_manager.cc
|
| @@ -155,6 +155,23 @@ DrmDisplayHostManager::DrmDisplayHostManager(
|
| }
|
| }
|
|
|
| +base::FileDescriptor DrmDisplayHostManager::DupVgemFd() {
|
| + if (vgem_card_path_.empty())
|
| + return base::FileDescriptor();
|
| +
|
| + int duped_handle = -1;
|
| + {
|
| + base::ThreadRestrictions::ScopedAllowIO allow_io;
|
| + duped_handle = HANDLE_EINTR(dup(vgem_card_device_file_.get()));
|
| + }
|
| + if (duped_handle < 0) {
|
| + PLOG(ERROR) << "dup() failed.";
|
| + return base::FileDescriptor();
|
| + }
|
| +
|
| + return base::FileDescriptor(duped_handle, true);
|
| +}
|
| +
|
| DrmDisplayHostManager::~DrmDisplayHostManager() {
|
| device_manager_->RemoveObserver(this);
|
| proxy_->UnregisterHandler(this);
|
|
|