Bug 1624768 - Forbid multisampled unsized DEPTH_STENCIL. r=lsalzman

Differential Revision: https://phabricator.services.mozilla.com/D68135

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Jeff Gilbert 2020-03-25 05:40:54 +00:00
Родитель 4d9cd18676
Коммит b672f22f08
3 изменённых файлов: 11 добавлений и 3 удалений

Просмотреть файл

@ -3181,6 +3181,14 @@ void ClientWebGLContext::RenderbufferStorageMultisample(GLenum target,
return;
}
if (internalFormat == LOCAL_GL_DEPTH_STENCIL && samples > 0) {
// While our backend supports it trivially, the spec forbids it.
EnqueueError(LOCAL_GL_INVALID_OPERATION,
"WebGL 1's DEPTH_STENCIL format may not be multisampled. Use "
"DEPTH24_STENCIL8 when `samples > 0`.");
return;
}
Run<RPROC(RenderbufferStorageMultisample)>(
rb->mId, static_cast<uint32_t>(samples), internalFormat,
static_cast<uint32_t>(width), static_cast<uint32_t>(height));

Просмотреть файл

@ -5307,7 +5307,7 @@ subsuite = webgl2-core
subsuite = webgl2-core
[generated/test_2_conformance2__renderbuffers__multisampled-depth-renderbuffer-initialization.html]
subsuite = webgl2-core
fail-if = 1
fail-if = (os == 'mac')
[generated/test_2_conformance2__renderbuffers__multisampled-renderbuffer-initialization.html]
subsuite = webgl2-core
fail-if = (os == 'android')

Просмотреть файл

@ -246,8 +246,6 @@ fail-if = 1
fail-if = os == 'mac' && os_version == '10.14' # macosx1014 due to 1563418
[generated/test_2_conformance2__textures__misc__tex-unpack-params-with-flip-y-and-premultiply-alpha.html]
fail-if = 1
[generated/test_2_conformance2__renderbuffers__multisampled-depth-renderbuffer-initialization.html]
fail-if = 1
####################################################
# Bugs
@ -852,6 +850,8 @@ skip-if = (os == 'mac')
[generated/test_2_conformance2__textures__misc__tex-unpack-params-imagedata.html]
# areArraysEqual(actual, expected) should be true. Was false.
fail-if = (os == 'mac')
[generated/test_2_conformance2__renderbuffers__multisampled-depth-renderbuffer-initialization.html]
fail-if = (os == 'mac')
####################
# failure on OSX