diff options
Diffstat (limited to 'chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc')
-rw-r--r-- | chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc b/chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc index e7642e41351..544df3618e8 100644 --- a/chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc +++ b/chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc @@ -102,8 +102,14 @@ MovableDisplaySnapshots DrmGpuDisplayManager::GetDisplays() { } else { displays_.push_back(std::make_unique<DrmDisplay>(screen_manager_, drm)); } - params_list.push_back( - displays_.back()->Update(display_info.get(), device_index)); + + auto display_snapshot = + displays_.back()->Update(display_info.get(), device_index); + if (display_snapshot) { + params_list.push_back(std::move(display_snapshot)); + } else { + displays_.pop_back(); + } } device_index++; } |