Skip to content

Restore fbo binding after updating surface texture from EGLStreams

Vlad Zahorodnii requested to merge work/zzag/eglstreams-restore-fbo-binding into master

Currently, data from client buffer EGLStream is copied to a surface texture. An fbo is used for that purpose. The main issue with it is that it doesn't restore the old framebuffer binding.

The surface texture can be updated in the middle of a compositing cycle.

If the framebuffer binding is not restored, any window that must be rendered in an offscreen texture won't be rendered to the offscreen texture.

This change makes EglStreamSurfaceTextureWayland restore the fbo binding so the DeformEffect and software screen rotation work as expected with the proprietary NVIDIA driver.

BUG: 442697

Merge request reports