mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-08 18:58:17 +02:00
st/mesa: Fix surfaceless opengl with non-dummy contexts
main/context.c:check_complatible() detecs an incomplete framebuffer using its pointer, so do not copy it. This should fix https://bugs.freedesktop.org/show_bug.cgi?id=34042
This commit is contained in:
parent
6c3a82a1a3
commit
81affb8f4c
1 changed files with 5 additions and 10 deletions
|
|
@ -426,19 +426,13 @@ st_framebuffer_create(struct st_framebuffer_iface *stfbi)
|
|||
struct gl_config mode;
|
||||
gl_buffer_index idx;
|
||||
|
||||
if (!stfbi)
|
||||
return NULL;
|
||||
|
||||
stfb = CALLOC_STRUCT(st_framebuffer);
|
||||
if (!stfb)
|
||||
return NULL;
|
||||
|
||||
/* for FBO-only context */
|
||||
if (!stfbi) {
|
||||
struct gl_framebuffer *base = _mesa_get_incomplete_framebuffer();
|
||||
|
||||
stfb->Base = *base;
|
||||
|
||||
return stfb;
|
||||
}
|
||||
|
||||
st_visual_to_context_mode(stfbi->visual, &mode);
|
||||
_mesa_initialize_window_framebuffer(&stfb->Base, &mode);
|
||||
|
||||
|
|
@ -764,7 +758,8 @@ st_api_make_current(struct st_api *stapi, struct st_context_iface *stctxi,
|
|||
ret = _mesa_make_current(st->ctx, &stdraw->Base, &stread->Base);
|
||||
}
|
||||
else {
|
||||
ret = FALSE;
|
||||
struct gl_framebuffer *incomplete = _mesa_get_incomplete_framebuffer();
|
||||
ret = _mesa_make_current(st->ctx, incomplete, incomplete);
|
||||
}
|
||||
|
||||
st_framebuffer_reference(&stdraw, NULL);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue