Skip to content

Commit a68dc10

Browse files
committed
test
1 parent d6e4482 commit a68dc10

File tree

2 files changed

+6
-12
lines changed

2 files changed

+6
-12
lines changed

tests/tests/write_texture.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ fn write_texture_subset_2d() {
8181
layout: wgpu::ImageDataLayout {
8282
offset: 0,
8383
bytes_per_row: Some(size),
84-
rows_per_image: Some(2),
84+
rows_per_image: Some(size),
8585
},
8686
},
8787
wgpu::Extent3d {
@@ -103,7 +103,7 @@ fn write_texture_subset_2d() {
103103
layout: wgpu::ImageDataLayout {
104104
offset: 0,
105105
bytes_per_row: Some(size),
106-
rows_per_image: Some(size - 2),
106+
rows_per_image: Some(size),
107107
},
108108
},
109109
wgpu::Extent3d {

wgpu-hal/src/metal/command.rs

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -317,16 +317,10 @@ impl crate::CommandEncoder<super::Api> for super::CommandEncoder {
317317
.max_copy_size(&dst.copy_size)
318318
.min(&copy.size);
319319
let bytes_per_row = copy.buffer_layout.bytes_per_row.unwrap_or(0) as u64;
320-
let image_byte_stride = if extent.depth > 1 {
321-
copy.buffer_layout
322-
.rows_per_image
323-
.map_or(0, |v| v as u64 * bytes_per_row)
324-
} else {
325-
// Don't pass a stride when updating a single layer, otherwise metal validation
326-
// fails when updating a subset of the image due to the stride being larger than
327-
// the amount of data to copy.
328-
0
329-
};
320+
let image_byte_stride = copy
321+
.buffer_layout
322+
.rows_per_image
323+
.map_or(0, |v| v as u64 * bytes_per_row);
330324
encoder.copy_from_buffer_to_texture(
331325
&src.raw,
332326
copy.buffer_layout.offset,

0 commit comments

Comments
 (0)