diff --git a/pyopencl/array.py b/pyopencl/array.py index 9a4718a14de9fe813788401d735afff548076ad9..996fd19ab8c17c63f58291f64afce48394668058 100644 --- a/pyopencl/array.py +++ b/pyopencl/array.py @@ -1568,7 +1568,7 @@ class Array(object): array_stride = self.strides[array_axis] - new_shape.append((stop-start-1)//idx_stride+1) + new_shape.append((abs(stop-start)-1)//abs(idx_stride)+1) new_strides.append(idx_stride*array_stride) new_offset += array_stride*start