Commit 1fd1c037 authored by Xaver Hugl's avatar Xaver Hugl
Browse files

screencast: make context current in tryEnqueue

The method is used when the cursor position changes. There is no guarantee
that a context would be current at that point in time
parent 9eecefd1
Pipeline #149994 passed with stage
in 15 minutes and 16 seconds
......@@ -522,8 +522,10 @@ void ScreenCastStream::tryEnqueue(pw_buffer *buffer)
// we need to insert a fence into the command stream and enqueue the pipewire buffer
// only after the fence is signaled; otherwise stream consumers will most likely see
// a corrupted buffer.
if (auto scene = Compositor::self()->scene()) {
scene->makeOpenGLContextCurrent();
}
if (kwinApp()->platform()->supportsNativeFence()) {
Q_ASSERT_X(eglGetCurrentContext(), "tryEnqueue", "no current context");
m_pendingFence = new EGLNativeFence(kwinApp()->platform()->sceneEglDisplay());
if (!m_pendingFence->isValid()) {
qCWarning(KWIN_SCREENCAST) << "Failed to create a native EGL fence";
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment