Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
ui/egl: fix make_context_current() callback return value
eglMakeCurrent() returns 1/EGL_TRUE on success. This is not what the
callback expects, where 0 indicates success.

While at it, print the EGL error to ease debugging.

As with virgl_renderer_callbacks, the return value is now checked since
version >= 4:
https://gitlab.freedesktop.org/virgl/virglrenderer/-/commit/7f09e6bf0c6ceea6727bd0049781256a28cab0e5

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-3-marcandre.lureau@redhat.com>
  • Loading branch information
elmarco committed Jun 27, 2023
1 parent 044ca4b commit 1d48c9f
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 4 deletions.
10 changes: 8 additions & 2 deletions ui/egl-context.c
@@ -1,4 +1,5 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
#include "ui/egl-context.h"

QEMUGLContext qemu_egl_create_context(DisplayGLCtx *dgc,
Expand Down Expand Up @@ -32,6 +33,11 @@ void qemu_egl_destroy_context(DisplayGLCtx *dgc, QEMUGLContext ctx)
int qemu_egl_make_context_current(DisplayGLCtx *dgc,
QEMUGLContext ctx)
{
return eglMakeCurrent(qemu_egl_display,
EGL_NO_SURFACE, EGL_NO_SURFACE, ctx);
if (!eglMakeCurrent(qemu_egl_display,
EGL_NO_SURFACE, EGL_NO_SURFACE, ctx)) {
error_report("egl: eglMakeCurrent failed: %s", qemu_egl_get_error_string());
return -1;
}

return 0;
}
10 changes: 8 additions & 2 deletions ui/gtk-egl.c
Expand Up @@ -13,6 +13,7 @@

#include "qemu/osdep.h"
#include "qemu/main-loop.h"
#include "qemu/error-report.h"

#include "trace.h"

Expand Down Expand Up @@ -369,6 +370,11 @@ int gd_egl_make_current(DisplayGLCtx *dgc,
{
VirtualConsole *vc = container_of(dgc, VirtualConsole, gfx.dgc);

return eglMakeCurrent(qemu_egl_display, vc->gfx.esurface,
vc->gfx.esurface, ctx);
if (!eglMakeCurrent(qemu_egl_display, vc->gfx.esurface,
vc->gfx.esurface, ctx)) {
error_report("egl: eglMakeCurrent failed: %s", qemu_egl_get_error_string());
return -1;
}

return 0;
}

0 comments on commit 1d48c9f

Please sign in to comment.