mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1022272 - Lets WebGL's draw{Arrays,Elements}() generate INVALID_OPERATION when all vertex attributes' divisor are different of 0 - r=jgilbert
This commit is contained in:
parent
81674b87c4
commit
1c3daa9c13
@ -111,6 +111,11 @@ bool WebGLContext::DrawArrays_check(GLint first, GLsizei count, GLsizei primcoun
|
||||
if (!DoFakeVertexAttrib0(checked_firstPlusCount.value())) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!DrawInstanced_check(info)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
BindFakeBlackTextures();
|
||||
|
||||
return true;
|
||||
@ -146,9 +151,6 @@ WebGLContext::DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsiz
|
||||
if (!DrawArrays_check(first, count, primcount, "drawArraysInstanced"))
|
||||
return;
|
||||
|
||||
if (!DrawInstanced_check("drawArraysInstanced"))
|
||||
return;
|
||||
|
||||
RunContextLossTimer();
|
||||
gl->fDrawArraysInstanced(mode, first, count, primcount);
|
||||
|
||||
@ -282,6 +284,11 @@ WebGLContext::DrawElements_check(GLsizei count, GLenum type,
|
||||
if (!DoFakeVertexAttrib0(mMaxFetchedVertices)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!DrawInstanced_check(info)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
BindFakeBlackTextures();
|
||||
|
||||
return true;
|
||||
@ -329,9 +336,6 @@ WebGLContext::DrawElementsInstanced(GLenum mode, GLsizei count, GLenum type,
|
||||
if (!DrawElements_check(count, type, byteOffset, primcount, "drawElementsInstanced"))
|
||||
return;
|
||||
|
||||
if (!DrawInstanced_check("drawElementsInstanced"))
|
||||
return;
|
||||
|
||||
RunContextLossTimer();
|
||||
gl->fDrawElementsInstanced(mode, count, type, reinterpret_cast<GLvoid*>(byteOffset), primcount);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user