loader_dri3/glx/egl: Optionally use a blit context for blitting operations
The code was relying on us always having a current context for client local image blit operations. Otherwise the blit would be skipped. However, glxSwapBuffers, for example, doesn't require a current context and that was a common problem in the dri1 era. It seems the problem has resurfaced with dri3. If we don't have a current context when we want to blit, try creating a private dri context and maintain a context cache of a single context. Signed-off-by:Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by:
Michel Dänzer <michel.daenzer@amd.com>
Showing
- src/egl/drivers/dri2/egl_dri2.c 4 additions, 1 deletionsrc/egl/drivers/dri2/egl_dri2.c
- src/egl/drivers/dri2/egl_dri2.h 2 additions, 0 deletionssrc/egl/drivers/dri2/egl_dri2.h
- src/egl/drivers/dri2/platform_x11_dri3.c 9 additions, 0 deletionssrc/egl/drivers/dri2/platform_x11_dri3.c
- src/glx/dri3_glx.c 1 addition, 0 deletionssrc/glx/dri3_glx.c
- src/loader/loader_dri3_helper.c 177 additions, 66 deletionssrc/loader/loader_dri3_helper.c
- src/loader/loader_dri3_helper.h 3 additions, 0 deletionssrc/loader/loader_dri3_helper.h
Loading
Please register or sign in to comment