--- ui/ozone/platform/wayland/host/wayland_frame_manager.cc.orig 2026-07-29 11:06:49 UTC +++ ui/ozone/platform/wayland/host/wayland_frame_manager.cc @@ -5,7 +5,9 @@ #include "ui/ozone/platform/wayland/host/wayland_frame_manager.h" #include +#if !BUILDFLAG(IS_BSD) #include +#endif #include #include @@ -468,8 +470,10 @@ std::optional WaylandFrameManager::ApplySurfaceC surface->UpdateBufferDamageRegion( gfx::ToEnclosingRectIgnoringError(surface_damage)); +#if !BUILDFLAG(IS_BSD) if (!config.access_fence_handle.is_null()) surface->set_acquire_fence(std::move(config.access_fence_handle)); +#endif bool needs_commit = false; @@ -501,6 +505,9 @@ std::optional WaylandFrameManager::ApplySurfaceC case WaylandBufferHandle::SyncMethod::kNone: break; case WaylandBufferHandle::SyncMethod::kSyncobj: +#if BUILDFLAG(IS_BSD) + LOG(WARNING) << "WaylandBufferHandle::SyncMethod::kSyncobj is not supported!"; +#endif surface->RequestExplicitRelease( base::BindOnce(&WaylandFrameManager::OnExplicitBufferRelease, weak_factory_.GetWeakPtr(), surface)); @@ -508,6 +515,9 @@ std::optional WaylandFrameManager::ApplySurfaceC case WaylandBufferHandle::SyncMethod::kDMAFence: [[fallthrough]]; case WaylandBufferHandle::SyncMethod::kImplicit: +#if BUILDFLAG(IS_BSD) + LOG(WARNING) << "WaylandBufferHandle::SyncMethod::kSyncobj is not supported!"; +#endif buffer_handle->set_buffer_released_callback( base::BindOnce(&WaylandFrameManager::OnWlBufferRelease, weak_factory_.GetWeakPtr(), surface), @@ -766,8 +776,10 @@ void WaylandFrameManager::OnExplicitBufferRelease(Wayl if (fence.is_valid()) { if (frame->merged_release_fence_fd.is_valid()) { +#if !BUILDFLAG(IS_BSD) frame->merged_release_fence_fd.reset(sync_merge( "", frame->merged_release_fence_fd.get(), fence.get())); +#endif } else { frame->merged_release_fence_fd = std::move(fence); } @@ -805,8 +817,10 @@ void WaylandFrameManager::OnWlBufferRelease(WaylandSur if (fence.is_valid()) { if (frame->merged_release_fence_fd.is_valid()) { +#if !BUILDFLAG(IS_BSD) frame->merged_release_fence_fd.reset(sync_merge( "", frame->merged_release_fence_fd.get(), fence.get())); +#endif } else { frame->merged_release_fence_fd = std::move(fence); }