LibWeb/WebGL: Bind default frame/render buffer when binding is null

This fixes the depth issues on github.com, as the depth commands are
now sent to the right frame/render buffer.
This commit is contained in:
Luke Wilde 2025-01-08 13:00:12 +00:00 committed by Alexander Kalenik
parent e5d59a2d42
commit 71746c47c2
Notes: github-actions[bot] 2025-01-08 14:56:38 +00:00
3 changed files with 23 additions and 2 deletions

View file

@ -1401,7 +1401,7 @@ public:
if (function.name == "bindFramebuffer"sv) {
generate_webgl_object_handle_unwrap(function_impl_generator, "framebuffer"sv, ""sv);
function_impl_generator.append(R"~~~(
glBindFramebuffer(target, framebuffer_handle);
glBindFramebuffer(target, framebuffer ? framebuffer_handle : m_context->default_framebuffer());
m_framebuffer_binding = framebuffer;
)~~~");
continue;
@ -1410,7 +1410,7 @@ public:
if (function.name == "bindRenderbuffer"sv) {
generate_webgl_object_handle_unwrap(function_impl_generator, "renderbuffer"sv, ""sv);
function_impl_generator.append(R"~~~(
glBindRenderbuffer(target, renderbuffer_handle);
glBindRenderbuffer(target, renderbuffer ? renderbuffer_handle : m_context->default_renderbuffer());
m_renderbuffer_binding = renderbuffer;
)~~~");
continue;