diff options
author | Simon Martin <simartin@users.sourceforge.net> | 2015-12-04 23:23:17 +0100 |
---|---|---|
committer | Simon Martin <simartin@users.sourceforge.net> | 2015-12-06 15:28:59 +0100 |
commit | fa555d0e2e66bd7bd63e57299ef53cb3c7f132ab (patch) | |
tree | e2249276ef49ab54539a339478d32665e8da9d60 /components/script/dom/webglrenderingcontext.rs | |
parent | 2cfcc26d9e5cc732a7594f0c0d96d4174c6b0a8a (diff) | |
download | servo-fa555d0e2e66bd7bd63e57299ef53cb3c7f132ab.tar.gz servo-fa555d0e2e66bd7bd63e57299ef53cb3c7f132ab.zip |
Issue #6791: Allow more array types in bufferData and bufferSubData.
Diffstat (limited to 'components/script/dom/webglrenderingcontext.rs')
-rw-r--r-- | components/script/dom/webglrenderingcontext.rs | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/components/script/dom/webglrenderingcontext.rs b/components/script/dom/webglrenderingcontext.rs index 6655a56f921..37fc47d9d78 100644 --- a/components/script/dom/webglrenderingcontext.rs +++ b/components/script/dom/webglrenderingcontext.rs @@ -37,7 +37,7 @@ use net_traits::image_cache_task::ImageResponse; use offscreen_gl_context::GLContextAttributes; use std::cell::Cell; use std::sync::mpsc::channel; -use std::{mem, ptr, slice}; +use std::{ptr, slice}; use util::str::DOMString; use util::vec::byte_swap; @@ -400,9 +400,7 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { if buffer_data.is_null() { return self.webgl_error(InvalidValue) // https://github.com/servo/servo/issues/5014 } - let data_f32 = JS_GetFloat32ArrayData(buffer_data, ptr::null()); - let data_vec_length = length / mem::size_of::<f32>() as u32; - slice::from_raw_parts(data_f32, data_vec_length as usize).to_vec() + slice::from_raw_parts(ptr, length as usize).to_vec() }; self.ipc_renderer .send(CanvasMsg::WebGL(CanvasWebGLMsg::BufferData(target, data_vec, usage))) @@ -431,9 +429,7 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { if buffer_data.is_null() { return self.webgl_error(InvalidValue) // https://github.com/servo/servo/issues/5014 } - let data_f32 = JS_GetFloat32ArrayData(buffer_data, ptr::null()); - let data_vec_length = length / mem::size_of::<f32>() as u32; - slice::from_raw_parts(data_f32, data_vec_length as usize).to_vec() + slice::from_raw_parts(ptr, length as usize).to_vec() }; // FIXME(simartin) Check that the defined region is inside the allocated one // https://github.com/servo/servo/issues/8738 |