aboutsummaryrefslogtreecommitdiffstats
path: root/components/canvas/webgl_thread.rs
diff options
context:
space:
mode:
authorAlan Jeffrey <ajeffrey@mozilla.com>2019-09-03 11:03:45 -0500
committerAlan Jeffrey <ajeffrey@mozilla.com>2019-09-03 11:03:45 -0500
commit1e3b08aae847915b48416f366fc755049e9ac03d (patch)
treea63d7a4abf21d2452ff79b6bf7340dffff03bac8 /components/canvas/webgl_thread.rs
parent4f4e219e54bf43dee47af26b7e6fc0b2c8018159 (diff)
downloadservo-1e3b08aae847915b48416f366fc755049e9ac03d.tar.gz
servo-1e3b08aae847915b48416f366fc755049e9ac03d.zip
Fallback to old extensions API if NUM_EXTENSIONS errors
Diffstat (limited to 'components/canvas/webgl_thread.rs')
-rw-r--r--components/canvas/webgl_thread.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/components/canvas/webgl_thread.rs b/components/canvas/webgl_thread.rs
index 7844c762cfb..ceaaf908b9f 100644
--- a/components/canvas/webgl_thread.rs
+++ b/components/canvas/webgl_thread.rs
@@ -1727,6 +1727,11 @@ impl WebGLImpl {
unsafe {
gl.get_integer_v(gl::NUM_EXTENSIONS, &mut ext_count);
}
+ // Fall back to the depricated extensions API if that fails
+ if gl.get_error() != gl::NO_ERROR {
+ chan.send(gl.get_string(gl::EXTENSIONS)).unwrap();
+ return;
+ }
let ext_count = ext_count[0] as usize;
let mut extensions = Vec::with_capacity(ext_count);
for idx in 0..ext_count {