diff --git a/Cargo.lock b/Cargo.lock index 8ff6df69e..12dd47e90 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1311,9 +1311,9 @@ dependencies = [ [[package]] name = "glow" -version = "0.14.2" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d51fa363f025f5c111e03f13eda21162faeacb6911fe8caa0c0349f9cf0c4483" +checksum = "c5e5ea60d70410161c8bf5da3fdfeaa1c72ed2c15f8bbb9d19fe3a4fad085f08" dependencies = [ "js-sys", "slotmap", diff --git a/Cargo.toml b/Cargo.toml index 5e1142575..3a62ffb08 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -153,7 +153,7 @@ windows-core = { version = "0.58", default-features = false } # Gles dependencies khronos-egl = "6" -glow = "0.14.2" +glow = "0.16" glutin = { version = "0.31", default-features = false } glutin-winit = { version = "0.4", default-features = false } glutin_wgl_sys = "0.6" diff --git a/wgpu-hal/src/gles/device.rs b/wgpu-hal/src/gles/device.rs index 8d0f2e70d..acc0388d7 100644 --- a/wgpu-hal/src/gles/device.rs +++ b/wgpu-hal/src/gles/device.rs @@ -826,7 +826,7 @@ impl crate::Device for super::Device { 0, format_desc.external, format_desc.data_type, - None, + glow::PixelUnpackData::Slice(None), ); width = max(1, width / 2); height = max(1, height / 2); @@ -846,7 +846,7 @@ impl crate::Device for super::Device { 0, format_desc.external, format_desc.data_type, - None, + glow::PixelUnpackData::Slice(None), ); width = max(1, width / 2); height = max(1, height / 2); @@ -899,7 +899,7 @@ impl crate::Device for super::Device { 0, format_desc.external, format_desc.data_type, - None, + glow::PixelUnpackData::Slice(None), ); } width = max(1, width / 2); @@ -918,7 +918,7 @@ impl crate::Device for super::Device { 0, format_desc.external, format_desc.data_type, - None, + glow::PixelUnpackData::Slice(None), ); width = max(1, width / 2); height = max(1, height / 2); diff --git a/wgpu-hal/src/gles/queue.rs b/wgpu-hal/src/gles/queue.rs index fc106eb23..f1bd47920 100644 --- a/wgpu-hal/src/gles/queue.rs +++ b/wgpu-hal/src/gles/queue.rs @@ -744,7 +744,7 @@ impl super::Queue { buffer_data = src.data.as_ref().unwrap().lock().unwrap(); let src_data = &buffer_data.as_slice()[copy.buffer_layout.offset as usize..]; - glow::PixelUnpackData::Slice(src_data) + glow::PixelUnpackData::Slice(Some(src_data)) } }; if is_layered_target(dst_target) { @@ -889,7 +889,7 @@ impl super::Queue { None => { buffer_data = dst.data.as_ref().unwrap().lock().unwrap(); let dst_data = &mut buffer_data.as_mut_slice()[offset as usize..]; - glow::PixelPackData::Slice(dst_data) + glow::PixelPackData::Slice(Some(dst_data)) } }; unsafe { @@ -1549,7 +1549,7 @@ impl super::Queue { unsafe { gl.bind_image_texture( slot, - binding.raw, + Some(binding.raw), binding.mip_level as i32, binding.array_layer.is_none(), binding.array_layer.unwrap_or_default() as i32,