waylandserver: set render backend for linuxdrmsyncobj directly

The code would previously never set the render backend, causing the use of explicit sync
to fail

BUG: 486391
wilder/Plasma/6.2
Xaver Hugl 2 years ago
parent 3465ecac16
commit 0f41239515
  1. 4
      src/platformsupport/scenes/opengl/abstract_egl_backend.cpp
  2. 4
      src/wayland_server.cpp

@ -192,11 +192,7 @@ void AbstractEglBackend::initWayland()
LinuxDmaBufV1ClientBufferIntegration *dmabuf = waylandServer()->linuxDmabuf();
dmabuf->setRenderBackend(this);
dmabuf->setSupportedFormatsWithModifiers(m_tranches);
if (auto syncObj = waylandServer()->linuxSyncObj()) {
syncObj->setRenderBackend(this);
}
}
waylandServer()->setRenderBackend(this);
}

@ -855,6 +855,10 @@ void WaylandServer::setRenderBackend(RenderBackend *backend)
}
} else if (m_linuxDrmSyncObj) {
m_linuxDrmSyncObj->remove();
m_linuxDrmSyncObj = nullptr;
}
if (m_linuxDrmSyncObj) {
m_linuxDrmSyncObj->setRenderBackend(backend);
}
}

Loading…
Cancel
Save