diff --git a/intern/ghost/intern/GHOST_SystemWayland.cc b/intern/ghost/intern/GHOST_SystemWayland.cc index fb8963d130d..4ac2cbbf65c 100644 --- a/intern/ghost/intern/GHOST_SystemWayland.cc +++ b/intern/ghost/intern/GHOST_SystemWayland.cc @@ -8084,8 +8084,10 @@ void GHOST_SystemWayland::setMultitouchGestures(const bool use) } m_multitouchGestures = use; +#ifdef USE_EVENT_BACKGROUND_THREAD /* Ensure this listeners aren't removed while events are generated. */ std::lock_guard lock_server_guard{*server_mutex}; +#endif for (GWL_Seat *seat : display_->seats) { if (use == gwl_seat_capability_pointer_multitouch_check(seat, use)) { continue; diff --git a/intern/ghost/intern/GHOST_WindowWayland.cc b/intern/ghost/intern/GHOST_WindowWayland.cc index 0c537f15f53..4420ab54511 100644 --- a/intern/ghost/intern/GHOST_WindowWayland.cc +++ b/intern/ghost/intern/GHOST_WindowWayland.cc @@ -1374,16 +1374,18 @@ static void libdecor_frame_handle_configure(libdecor_frame *frame, decor.pending.configuration = configuration; decor.pending.ack_configure = true; +# ifdef USE_EVENT_BACKGROUND_THREAD if (!is_main_thread) { -# ifdef USE_LIBDECOR_CONFIG_COPY_WORKAROUND +# ifdef USE_LIBDECOR_CONFIG_COPY_WORKAROUND decor.pending.configuration = ghost_wl_libdecor_configuration_copy(configuration); decor.pending.configuration_needs_free = true; -# else +# else /* Without a way to copy the configuration, * the configuration will be ignored as it can't be postponed. */ decor.pending.configuration = nullptr; -# endif /* !USE_LIBDECOR_CONFIG_COPY_WORKAROUND */ +# endif /* !USE_LIBDECOR_CONFIG_COPY_WORKAROUND */ } +# endif # ifdef USE_LIBDECOR_CONFIG_COPY_QUEUE if (!(size_next[0] && size_next[1])) {