mirror of
https://github.com/servo/servo.git
synced 2025-07-23 07:13:52 +01:00
Auto merge of #21313 - jdm:glstuff, r=nox
Framebuffer and renderbuffer fixes This commits address two separate panics that occur when running the framebuffer-object-attachment.html test. The test still panics due to another framebuffer completion status problem, so the overall test results don't demonstrate any improvement. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #21252 - [x] There are tests for these changes <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21313) <!-- Reviewable:end -->
This commit is contained in:
commit
bde8a1e239
12 changed files with 181 additions and 54 deletions
|
@ -6,7 +6,7 @@ use canvas_traits::webgl::WebGLVersion;
|
|||
use dom::bindings::codegen::Bindings::EXTShaderTextureLodBinding;
|
||||
use dom::bindings::reflector::{DomObject, Reflector, reflect_dom_object};
|
||||
use dom::bindings::root::DomRoot;
|
||||
use dom::webglrenderingcontext::WebGLRenderingContext;
|
||||
use dom::webglrenderingcontext::{WebGLRenderingContext, is_gles};
|
||||
use dom_struct::dom_struct;
|
||||
use super::{WebGLExtension, WebGLExtensions, WebGLExtensionSpec};
|
||||
|
||||
|
@ -37,11 +37,8 @@ impl WebGLExtension for EXTShaderTextureLod {
|
|||
}
|
||||
|
||||
fn is_supported(ext: &WebGLExtensions) -> bool {
|
||||
if cfg!(any(target_os = "android", target_os = "ios")) {
|
||||
return ext.supports_gl_extension("GL_EXT_shader_texture_lod");
|
||||
}
|
||||
// This extension is always available on desktop GL.
|
||||
true
|
||||
!is_gles() || ext.supports_gl_extension("GL_EXT_shader_texture_lod")
|
||||
}
|
||||
|
||||
fn enable(_ext: &WebGLExtensions) {}
|
||||
|
|
|
@ -6,7 +6,7 @@ use canvas_traits::webgl::WebGLVersion;
|
|||
use dom::bindings::codegen::Bindings::OESElementIndexUintBinding;
|
||||
use dom::bindings::reflector::{DomObject, Reflector, reflect_dom_object};
|
||||
use dom::bindings::root::DomRoot;
|
||||
use dom::webglrenderingcontext::WebGLRenderingContext;
|
||||
use dom::webglrenderingcontext::{WebGLRenderingContext, is_gles};
|
||||
use dom_struct::dom_struct;
|
||||
use super::{WebGLExtension, WebGLExtensions, WebGLExtensionSpec};
|
||||
|
||||
|
@ -37,11 +37,8 @@ impl WebGLExtension for OESElementIndexUint {
|
|||
}
|
||||
|
||||
fn is_supported(ext: &WebGLExtensions) -> bool {
|
||||
if cfg!(any(target_os = "android", target_os = "ios")) {
|
||||
return ext.supports_gl_extension("GL_OES_element_index_uint");
|
||||
}
|
||||
// This extension is always available in desktop OpenGL.
|
||||
true
|
||||
!is_gles() || ext.supports_gl_extension("GL_OES_element_index_uint")
|
||||
}
|
||||
|
||||
fn enable(ext: &WebGLExtensions) {
|
||||
|
|
|
@ -7,7 +7,7 @@ use dom::bindings::codegen::Bindings::OESStandardDerivativesBinding;
|
|||
use dom::bindings::codegen::Bindings::OESStandardDerivativesBinding::OESStandardDerivativesConstants;
|
||||
use dom::bindings::reflector::{DomObject, Reflector, reflect_dom_object};
|
||||
use dom::bindings::root::DomRoot;
|
||||
use dom::webglrenderingcontext::WebGLRenderingContext;
|
||||
use dom::webglrenderingcontext::{WebGLRenderingContext, is_gles};
|
||||
use dom_struct::dom_struct;
|
||||
use super::{WebGLExtension, WebGLExtensions, WebGLExtensionSpec};
|
||||
|
||||
|
@ -37,11 +37,8 @@ impl WebGLExtension for OESStandardDerivatives {
|
|||
}
|
||||
|
||||
fn is_supported(ext: &WebGLExtensions) -> bool {
|
||||
if cfg!(any(target_os = "android", target_os = "ios")) {
|
||||
return ext.supports_any_gl_extension(&["GL_OES_standard_derivatives"]);
|
||||
}
|
||||
// The standard derivatives are always available in desktop OpenGL.
|
||||
true
|
||||
!is_gles() || ext.supports_any_gl_extension(&["GL_OES_standard_derivatives"])
|
||||
}
|
||||
|
||||
fn enable(ext: &WebGLExtensions) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue