diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2016-04-14 17:41:12 +0530 |
---|---|---|
committer | bors-servo <lbergstrom+bors@mozilla.com> | 2016-04-14 17:41:12 +0530 |
commit | 7845d670d0c0af7c4782c547e62c4b737e345fad (patch) | |
tree | 7f20da7f0d087003e6a83aa54210de32beb11246 | |
parent | 11f4d3f35609552feded6de56cc95aaf73ccc699 (diff) | |
parent | 89c432b2d2622c316b193bc3bda14cd2a7fdd1c9 (diff) | |
download | servo-7845d670d0c0af7c4782c547e62c4b737e345fad.tar.gz servo-7845d670d0c0af7c4782c547e62c4b737e345fad.zip |
Auto merge of #10436 - autrilla:uniform2, r=emilio
Added Uniform{2i, 2iv, 2fv, 3f, 3i, 3iv, 3fv}
@emilio r?
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10436)
<!-- Reviewable:end -->
-rw-r--r-- | components/script/dom/webglrenderingcontext.rs | 333 | ||||
-rw-r--r-- | components/script/dom/webidls/WebGLRenderingContext.webidl | 11 | ||||
-rw-r--r-- | components/servo/Cargo.lock | 26 | ||||
-rw-r--r-- | ports/cef/Cargo.lock | 28 | ||||
-rw-r--r-- | ports/gonk/Cargo.lock | 26 |
5 files changed, 262 insertions, 162 deletions
diff --git a/components/script/dom/webglrenderingcontext.rs b/components/script/dom/webglrenderingcontext.rs index 4c6996cbb90..197dcce55f5 100644 --- a/components/script/dom/webglrenderingcontext.rs +++ b/components/script/dom/webglrenderingcontext.rs @@ -3,6 +3,7 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use canvas_traits::{CanvasCommonMsg, CanvasMsg}; +use dom::bindings::codegen::Bindings::WebGLActiveInfoBinding::WebGLActiveInfoMethods; use dom::bindings::codegen::Bindings::WebGLRenderingContextBinding::WebGLRenderingContextConstants as constants; use dom::bindings::codegen::Bindings::WebGLRenderingContextBinding::{WebGLRenderingContextMethods}; use dom::bindings::codegen::Bindings::WebGLRenderingContextBinding::{self, WebGLContextAttributes}; @@ -66,6 +67,45 @@ bitflags! { } } +pub enum UniformType { + Int, + IntVec2, + IntVec3, + IntVec4, + Float, + FloatVec2, + FloatVec3, + FloatVec4, +} + +impl UniformType { + fn element_count(&self) -> usize { + match *self { + UniformType::Int => 1, + UniformType::IntVec2 => 2, + UniformType::IntVec3 => 3, + UniformType::IntVec4 => 4, + UniformType::Float => 1, + UniformType::FloatVec2 => 2, + UniformType::FloatVec3 => 3, + UniformType::FloatVec4 => 4, + } + } + + fn as_gl_constant(&self) -> u32 { + match *self { + UniformType::Int => constants::INT, + UniformType::IntVec2 => constants::INT_VEC2, + UniformType::IntVec3 => constants::INT_VEC3, + UniformType::IntVec4 => constants::INT_VEC4, + UniformType::Float => constants::FLOAT, + UniformType::FloatVec2 => constants::FLOAT_VEC2, + UniformType::FloatVec3 => constants::FLOAT_VEC3, + UniformType::FloatVec4 => constants::FLOAT_VEC4, + } + } +} + #[dom_struct] pub struct WebGLRenderingContext { reflector_: Reflector, @@ -178,6 +218,59 @@ impl WebGLRenderingContext { .send(CanvasMsg::WebGL(WebGLCommand::VertexAttrib(indx, x, y, z, w))) .unwrap(); } + + // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 + // https://www.khronos.org/opengles/sdk/docs/man/xhtml/glUniform.xml + // https://www.khronos.org/registry/gles/specs/2.0/es_full_spec_2.0.25.pdf#nameddest=section-2.10.4 + fn validate_uniform_parameters<T>(&self, + uniform: Option<&WebGLUniformLocation>, + type_: UniformType, + data: Option<&[T]>) -> bool { + let uniform = match uniform { + Some(uniform) => uniform, + None => return false, + }; + + let program = self.current_program.get(); + let program = match program { + Some(ref program) if program.id() == uniform.program_id() => program, + _ => { + self.webgl_error(InvalidOperation); + return false; + }, + }; + + let data = match data { + Some(data) => data, + None => { + self.webgl_error(InvalidOperation); + return false; + }, + }; + + // TODO(autrilla): Don't request this every time, cache it + let active_uniform = match program.get_active_uniform( + uniform.id() as u32) { + Ok(active_uniform) => active_uniform, + Err(_) => { + self.webgl_error(InvalidOperation); + return false; + }, + }; + + if data.len() % type_.element_count() != 0 || + (data.len() / type_.element_count() > active_uniform.Size() as usize) { + self.webgl_error(InvalidOperation); + return false; + } + + if type_.as_gl_constant() != active_uniform.Type() { + self.webgl_error(InvalidOperation); + return false; + } + + return true; + } } impl Drop for WebGLRenderingContext { @@ -1018,38 +1111,22 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { fn Uniform1f(&self, uniform: Option<&WebGLUniformLocation>, val: f32) { - let uniform = match uniform { - Some(uniform) => uniform, - None => return, - }; - - match self.current_program.get() { - Some(ref program) if program.id() == uniform.program_id() => {}, - _ => return self.webgl_error(InvalidOperation), - }; - - self.ipc_renderer - .send(CanvasMsg::WebGL(WebGLCommand::Uniform1f(uniform.id(), val))) - .unwrap() + if self.validate_uniform_parameters(uniform, UniformType::Float, Some(&[val])) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform1f(uniform.unwrap().id(), val))) + .unwrap() + } } // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 fn Uniform1i(&self, uniform: Option<&WebGLUniformLocation>, val: i32) { - let uniform = match uniform { - Some(uniform) => uniform, - None => return, - }; - - match self.current_program.get() { - Some(ref program) if program.id() == uniform.program_id() => {}, - _ => return self.webgl_error(InvalidOperation), - }; - - self.ipc_renderer - .send(CanvasMsg::WebGL(WebGLCommand::Uniform1i(uniform.id(), val))) - .unwrap() + if self.validate_uniform_parameters(uniform, UniformType::Int, Some(&[val])) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform1i(uniform.unwrap().id(), val))) + .unwrap() + } } // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 @@ -1057,90 +1134,132 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { _cx: *mut JSContext, uniform: Option<&WebGLUniformLocation>, data: Option<*mut JSObject>) { - let data = match data { - Some(data) => data, - None => return self.webgl_error(InvalidValue), - }; - - if let Some(data) = array_buffer_view_to_vec_checked::<i32>(data) { - if data.len() < 1 { - return self.webgl_error(InvalidOperation); - } - - self.Uniform1i(uniform, data[0]); - } else { - self.webgl_error(InvalidValue); + let data_vec = data.and_then(|d| array_buffer_view_to_vec::<i32>(d)); + if self.validate_uniform_parameters(uniform, UniformType::Int, data_vec.as_ref().map(Vec::as_slice)) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform1iv(uniform.unwrap().id(), data_vec.unwrap()))) + .unwrap() } } // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 fn Uniform1fv(&self, + _cx: *mut JSContext, uniform: Option<&WebGLUniformLocation>, - data: Vec<f32>) { - if data.is_empty() { - return self.webgl_error(InvalidValue); + data: Option<*mut JSObject>) { + let data_vec = data.and_then(|d| array_buffer_view_to_vec::<f32>(d)); + if self.validate_uniform_parameters(uniform, UniformType::Float, data_vec.as_ref().map(Vec::as_slice)) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform1fv(uniform.unwrap().id(), data_vec.unwrap()))) + .unwrap() } - - self.Uniform1f(uniform, data[0]); } // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 fn Uniform2f(&self, uniform: Option<&WebGLUniformLocation>, x: f32, y: f32) { - let uniform = match uniform { - Some(uniform) => uniform, - None => return, - }; + if self.validate_uniform_parameters(uniform, UniformType::FloatVec2, Some(&[x, y])) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform2f(uniform.unwrap().id(), x, y))) + .unwrap() + } + } - match self.current_program.get() { - Some(ref program) if program.id() == uniform.program_id() => {}, - _ => return self.webgl_error(InvalidOperation), - }; + // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 + fn Uniform2fv(&self, + _cx: *mut JSContext, + uniform: Option<&WebGLUniformLocation>, + data: Option<*mut JSObject>) { + let data_vec = data.and_then(|d| array_buffer_view_to_vec::<f32>(d)); + if self.validate_uniform_parameters(uniform, UniformType::FloatVec2, data_vec.as_ref().map(Vec::as_slice)) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform2fv(uniform.unwrap().id(), data_vec.unwrap()))) + .unwrap() + } + } - self.ipc_renderer - .send(CanvasMsg::WebGL(WebGLCommand::Uniform2f(uniform.id(), x, y))) - .unwrap() + // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 + fn Uniform2i(&self, + uniform: Option<&WebGLUniformLocation>, + x: i32, y: i32) { + if self.validate_uniform_parameters(uniform, UniformType::IntVec2, Some(&[x, y])) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform2i(uniform.unwrap().id(), x, y))) + .unwrap() + } } // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 - fn Uniform2fv(&self, + fn Uniform2iv(&self, _cx: *mut JSContext, uniform: Option<&WebGLUniformLocation>, data: Option<*mut JSObject>) { - let data = match data { - Some(data) => data, - None => return self.webgl_error(InvalidValue), - }; + let data_vec = data.and_then(|d| array_buffer_view_to_vec::<i32>(d)); + if self.validate_uniform_parameters(uniform, UniformType::IntVec2, data_vec.as_ref().map(Vec::as_slice)) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform2iv(uniform.unwrap().id(), data_vec.unwrap()))) + .unwrap() + } + } - if let Some(data) = array_buffer_view_to_vec_checked::<f32>(data) { - if data.len() < 2 { - return self.webgl_error(InvalidOperation); - } + // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 + fn Uniform3f(&self, + uniform: Option<&WebGLUniformLocation>, + x: f32, y: f32, z: f32) { + if self.validate_uniform_parameters(uniform, UniformType::FloatVec3, Some(&[x, y, z])) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform3f(uniform.unwrap().id(), x, y, z))) + .unwrap() + } + } - self.Uniform2f(uniform, data[0], data[1]); - } else { - self.webgl_error(InvalidValue); + // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 + fn Uniform3fv(&self, + _cx: *mut JSContext, + uniform: Option<&WebGLUniformLocation>, + data: Option<*mut JSObject>) { + let data_vec = data.and_then(|d| array_buffer_view_to_vec::<f32>(d)); + if self.validate_uniform_parameters(uniform, UniformType::FloatVec3, data_vec.as_ref().map(Vec::as_slice)) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform3fv(uniform.unwrap().id(), data_vec.unwrap()))) + .unwrap() } } // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 - fn Uniform4i(&self, + fn Uniform3i(&self, uniform: Option<&WebGLUniformLocation>, - x: i32, y: i32, z: i32, w: i32) { - let uniform = match uniform { - Some(uniform) => uniform, - None => return, - }; + x: i32, y: i32, z: i32) { + if self.validate_uniform_parameters(uniform, UniformType::IntVec3, Some(&[x, y, z])) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform3i(uniform.unwrap().id(), x, y, z))) + .unwrap() + } + } - match self.current_program.get() { - Some(ref program) if program.id() == uniform.program_id() => {}, - _ => return self.webgl_error(InvalidOperation), - }; + // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 + fn Uniform3iv(&self, + _cx: *mut JSContext, + uniform: Option<&WebGLUniformLocation>, + data: Option<*mut JSObject>) { + let data_vec = data.and_then(|d| array_buffer_view_to_vec::<i32>(d)); + if self.validate_uniform_parameters(uniform, UniformType::IntVec3, data_vec.as_ref().map(Vec::as_slice)) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform3iv(uniform.unwrap().id(), data_vec.unwrap()))) + .unwrap() + } + } - self.ipc_renderer - .send(CanvasMsg::WebGL(WebGLCommand::Uniform4i(uniform.id(), x, y, z, w))) - .unwrap() + // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 + fn Uniform4i(&self, + uniform: Option<&WebGLUniformLocation>, + x: i32, y: i32, z: i32, w: i32) { + if self.validate_uniform_parameters(uniform, UniformType::IntVec4, Some(&[x, y, z, w])) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform4i(uniform.unwrap().id(), x, y, z, w))) + .unwrap() + } } @@ -1149,19 +1268,11 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { _cx: *mut JSContext, uniform: Option<&WebGLUniformLocation>, data: Option<*mut JSObject>) { - let data = match data { - Some(data) => data, - None => return self.webgl_error(InvalidValue), - }; - - if let Some(data) = array_buffer_view_to_vec_checked::<i32>(data) { - if data.len() < 4 { - return self.webgl_error(InvalidOperation); - } - - self.Uniform4i(uniform, data[0], data[1], data[2], data[3]); - } else { - self.webgl_error(InvalidValue); + let data_vec = data.and_then(|d| array_buffer_view_to_vec::<i32>(d)); + if self.validate_uniform_parameters(uniform, UniformType::IntVec4, data_vec.as_ref().map(Vec::as_slice)) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform4iv(uniform.unwrap().id(), data_vec.unwrap()))) + .unwrap() } } @@ -1169,19 +1280,11 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { fn Uniform4f(&self, uniform: Option<&WebGLUniformLocation>, x: f32, y: f32, z: f32, w: f32) { - let uniform = match uniform { - Some(uniform) => uniform, - None => return, - }; - - match self.current_program.get() { - Some(ref program) if program.id() == uniform.program_id() => {}, - _ => return self.webgl_error(InvalidOperation), - }; - - self.ipc_renderer - .send(CanvasMsg::WebGL(WebGLCommand::Uniform4f(uniform.id(), x, y, z, w))) - .unwrap() + if self.validate_uniform_parameters(uniform, UniformType::FloatVec4, Some(&[x, y, z, w])) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform4f(uniform.unwrap().id(), x, y, z, w))) + .unwrap() + } } // https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.10 @@ -1189,19 +1292,11 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { _cx: *mut JSContext, uniform: Option<&WebGLUniformLocation>, data: Option<*mut JSObject>) { - let data = match data { - Some(data) => data, - None => return self.webgl_error(InvalidValue), - }; - - if let Some(data) = array_buffer_view_to_vec_checked::<f32>(data) { - if data.len() < 4 { - return self.webgl_error(InvalidOperation); - } - - self.Uniform4f(uniform, data[0], data[1], data[2], data[3]); - } else { - self.webgl_error(InvalidValue); + let data_vec = data.and_then(|d| array_buffer_view_to_vec::<f32>(d)); + if self.validate_uniform_parameters(uniform, UniformType::FloatVec4, data_vec.as_ref().map(Vec::as_slice)) { + self.ipc_renderer + .send(CanvasMsg::WebGL(WebGLCommand::Uniform4fv(uniform.unwrap().id(), data_vec.unwrap()))) + .unwrap() } } diff --git a/components/script/dom/webidls/WebGLRenderingContext.webidl b/components/script/dom/webidls/WebGLRenderingContext.webidl index d2c93d9a3c5..6c36844f313 100644 --- a/components/script/dom/webidls/WebGLRenderingContext.webidl +++ b/components/script/dom/webidls/WebGLRenderingContext.webidl @@ -646,7 +646,8 @@ interface WebGLRenderingContextBase void uniform1f(WebGLUniformLocation? location, GLfloat x); //void uniform1fv(WebGLUniformLocation? location, Float32Array v); - void uniform1fv(WebGLUniformLocation? location, sequence<GLfloat> v); + //void uniform1fv(WebGLUniformLocation? location, sequence<GLfloat> v); + void uniform1fv(WebGLUniformLocation? location, optional object v); void uniform1i(WebGLUniformLocation? location, GLint x); //void uniform1iv(WebGLUniformLocation? location, Int32Array v); //void uniform1iv(WebGLUniformLocation? location, sequence<long> v); @@ -656,14 +657,18 @@ interface WebGLRenderingContextBase //void uniform2fv(WebGLUniformLocation? location, sequence<GLfloat> v); void uniform2fv(WebGLUniformLocation? location, optional object v); //void uniform2i(WebGLUniformLocation? location, GLint x, GLint y); + void uniform2i(WebGLUniformLocation? location, GLint x, GLint y); //void uniform2iv(WebGLUniformLocation? location, Int32Array v); //void uniform2iv(WebGLUniformLocation? location, sequence<long> v); - //void uniform3f(WebGLUniformLocation? location, GLfloat x, GLfloat y, GLfloat z); + void uniform2iv(WebGLUniformLocation? location, optional object v); + void uniform3f(WebGLUniformLocation? location, GLfloat x, GLfloat y, GLfloat z); + void uniform3fv(WebGLUniformLocation? location, optional object v); //void uniform3fv(WebGLUniformLocation? location, Float32Array v); //void uniform3fv(WebGLUniformLocation? location, sequence<GLfloat> v); - //void uniform3i(WebGLUniformLocation? location, GLint x, GLint y, GLint z); + void uniform3i(WebGLUniformLocation? location, GLint x, GLint y, GLint z); //void uniform3iv(WebGLUniformLocation? location, Int32Array v); //void uniform3iv(WebGLUniformLocation? location, sequence<long> v); + void uniform3iv(WebGLUniformLocation? location, optional object v); void uniform4f(WebGLUniformLocation? location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); // FIXME(dmarcos) The function below is the original function in the webIdl: //void uniform4fv(WebGLUniformLocation? location, Float32Array v); diff --git a/components/servo/Cargo.lock b/components/servo/Cargo.lock index 73bf74a008c..85f65250dbe 100644 --- a/components/servo/Cargo.lock +++ b/components/servo/Cargo.lock @@ -16,7 +16,7 @@ dependencies = [ "gaol 0.0.1 (git+https://github.com/servo/gaol)", "gfx 0.0.1", "gfx_tests 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "glutin_app 0.0.1", "image 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", @@ -166,7 +166,7 @@ dependencies = [ "canvas_traits 0.0.1", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gfx_traits 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -215,7 +215,7 @@ name = "cgl" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -296,7 +296,7 @@ dependencies = [ "gaol 0.0.1 (git+https://github.com/servo/gaol)", "gfx 0.0.1", "gfx_traits 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "image 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", @@ -761,7 +761,7 @@ dependencies = [ [[package]] name = "gleam" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "gl_generator 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -780,7 +780,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "compositing 0.0.1", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", "msg 0.0.1", "net_traits 0.0.1", @@ -950,7 +950,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "leaky-cow 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1022,7 +1022,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "glx 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1420,7 +1420,7 @@ dependencies = [ "core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gl_generator 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "khronos_api 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1914,7 +1914,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "expat-sys 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "glx 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "io-surface 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2330,7 +2330,7 @@ dependencies = [ "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "freetype 0.1.0 (git+https://github.com/servo/rust-freetype)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2344,13 +2344,13 @@ dependencies = [ [[package]] name = "webrender_traits" version = "0.1.0" -source = "git+https://github.com/servo/webrender_traits#96f95c059c68aed3576334fe9d532bc5779c4138" +source = "git+https://github.com/servo/webrender_traits#227867554a07769ed10ce7cdb7b6dddda4a0a445" dependencies = [ "app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "core-graphics 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "offscreen_gl_context 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", diff --git a/ports/cef/Cargo.lock b/ports/cef/Cargo.lock index c15817549a0..2d36666b76b 100644 --- a/ports/cef/Cargo.lock +++ b/ports/cef/Cargo.lock @@ -12,7 +12,7 @@ dependencies = [ "devtools 0.0.1", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gfx 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "glutin_app 0.0.1", "js 0.1.2 (git+https://github.com/servo/rust-mozjs)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", @@ -150,7 +150,7 @@ dependencies = [ "canvas_traits 0.0.1", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gfx_traits 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -199,7 +199,7 @@ name = "cgl" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -265,7 +265,7 @@ dependencies = [ "gaol 0.0.1 (git+https://github.com/servo/gaol)", "gfx 0.0.1", "gfx_traits 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "image 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", @@ -680,7 +680,7 @@ dependencies = [ [[package]] name = "gleam" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "gl_generator 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -699,7 +699,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "compositing 0.0.1", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", "msg 0.0.1", "net_traits 0.0.1", @@ -869,7 +869,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "leaky-cow 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -941,7 +941,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "glx 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1306,7 +1306,7 @@ dependencies = [ "core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gl_generator 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "khronos_api 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1714,7 +1714,7 @@ dependencies = [ "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gaol 0.0.1 (git+https://github.com/servo/gaol)", "gfx 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "glutin_app 0.0.1", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", @@ -1808,7 +1808,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "expat-sys 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "glx 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "io-surface 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2196,7 +2196,7 @@ dependencies = [ "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "freetype 0.1.0 (git+https://github.com/servo/rust-freetype)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2210,13 +2210,13 @@ dependencies = [ [[package]] name = "webrender_traits" version = "0.1.0" -source = "git+https://github.com/servo/webrender_traits#96f95c059c68aed3576334fe9d532bc5779c4138" +source = "git+https://github.com/servo/webrender_traits#227867554a07769ed10ce7cdb7b6dddda4a0a445" dependencies = [ "app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "core-graphics 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "offscreen_gl_context 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", diff --git a/ports/gonk/Cargo.lock b/ports/gonk/Cargo.lock index 5aaedff2fa4..94f16308b37 100644 --- a/ports/gonk/Cargo.lock +++ b/ports/gonk/Cargo.lock @@ -8,7 +8,7 @@ dependencies = [ "errno 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gfx 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", "layout 0.0.1", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -143,7 +143,7 @@ dependencies = [ "canvas_traits 0.0.1", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gfx_traits 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -192,7 +192,7 @@ name = "cgl" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -258,7 +258,7 @@ dependencies = [ "gaol 0.0.1 (git+https://github.com/servo/gaol)", "gfx 0.0.1", "gfx_traits 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "image 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", @@ -683,7 +683,7 @@ dependencies = [ [[package]] name = "gleam" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "gl_generator 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -851,7 +851,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "leaky-cow 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -923,7 +923,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "glx 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1288,7 +1288,7 @@ dependencies = [ "core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gl_generator 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "khronos_api 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1696,7 +1696,7 @@ dependencies = [ "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "gaol 0.0.1 (git+https://github.com/servo/gaol)", "gfx 0.0.1", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "layers 0.2.4 (git+https://github.com/servo/rust-layers)", "layout 0.0.1", @@ -1788,7 +1788,7 @@ dependencies = [ "cgl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "expat-sys 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "glx 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "io-surface 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2146,7 +2146,7 @@ dependencies = [ "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "freetype 0.1.0 (git+https://github.com/servo/rust-freetype)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2160,13 +2160,13 @@ dependencies = [ [[package]] name = "webrender_traits" version = "0.1.0" -source = "git+https://github.com/servo/webrender_traits#96f95c059c68aed3576334fe9d532bc5779c4138" +source = "git+https://github.com/servo/webrender_traits#227867554a07769ed10ce7cdb7b6dddda4a0a445" dependencies = [ "app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "core-graphics 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "euclid 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gleam 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "gleam 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)", "offscreen_gl_context 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", |