LibWeb/WebGL: Implement bindAttribLocation()

This commit is contained in:
Aliaksandr Kalenik 2024-12-05 16:08:30 +01:00 committed by Alexander Kalenik
parent 11ddc88ed7
commit b8109c3047
Notes: github-actions[bot] 2024-12-05 15:43:15 +00:00
2 changed files with 6 additions and 2 deletions

View file

@ -46,7 +46,7 @@ interface mixin WebGLRenderingContextBase {
undefined activeTexture(GLenum texture);
undefined attachShader(WebGLProgram program, WebGLShader shader);
[FIXME] undefined bindAttribLocation(WebGLProgram program, GLuint index, DOMString name);
undefined bindAttribLocation(WebGLProgram program, GLuint index, DOMString name);
undefined bindBuffer(GLenum target, WebGLBuffer? buffer);
[FIXME] undefined bindFramebuffer(GLenum target, WebGLFramebuffer? framebuffer);
[FIXME] undefined bindRenderbuffer(GLenum target, WebGLRenderbuffer? renderbuffer);

View file

@ -590,7 +590,11 @@ public:
continue;
}
if (parameter.type->is_string()) {
gl_call_arguments.append(ByteString::formatted("{}", parameter.name));
function_impl_generator.set("parameter_name", parameter.name);
function_impl_generator.append(R"~~~(
auto @parameter_name@_null_terminated = null_terminated_string(@parameter_name@);
)~~~");
gl_call_arguments.append(ByteString::formatted("{}_null_terminated.data()", parameter.name));
continue;
}
if (is_webgl_object_type(parameter.type->name())) {