From f5468a6daed839649e7dab25cfc0336d93ea18e3 Mon Sep 17 00:00:00 2001 From: Rob Bradford Date: Mon, 6 Jul 2026 23:27:55 +0100 Subject: [PATCH] block: Fix clippy: chunks_exact with constant chunk size ``` warning: using `chunks_exact` with a constant chunk size --> block/src/formats/qcow/internal/header.rs:253:39 | 253 | for entry in data.chunks_exact(FEATURE_NAME_ENTRY_SIZE) { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `as_chunks` instead | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#chunks_exact_to_as_chunks = note: `-D clippy::chunks-exact-to-as-chunks` implied by `-D clippy::all` ``` Signed-off-by: Rob Bradford --- block/src/formats/qcow/internal/header.rs | 2 +- block/src/formats/qcow/internal/qcow_raw_file.rs | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/block/src/formats/qcow/internal/header.rs b/block/src/formats/qcow/internal/header.rs index 62b7a0773..f4b677788 100644 --- a/block/src/formats/qcow/internal/header.rs +++ b/block/src/formats/qcow/internal/header.rs @@ -250,7 +250,7 @@ impl QcowHeader { .map_err(Error::ReadingHeader)?; offset += data.len() as u64; let table = feature_table.as_mut().unwrap(); - for entry in data.chunks_exact(FEATURE_NAME_ENTRY_SIZE) { + for entry in data.as_chunks::().0 { if entry[0] == FEAT_TYPE_INCOMPATIBLE { let bit_number = entry[1]; let name_bytes = &entry[2..]; diff --git a/block/src/formats/qcow/internal/qcow_raw_file.rs b/block/src/formats/qcow/internal/qcow_raw_file.rs index 6ff411ee5..d1814c5e3 100644 --- a/block/src/formats/qcow/internal/qcow_raw_file.rs +++ b/block/src/formats/qcow/internal/qcow_raw_file.rs @@ -203,8 +203,10 @@ impl QcowRawFile { self.file.read_exact_at(&mut bytes, offset)?; let m = mask.unwrap_or(u64::MAX); let table = bytes - .chunks_exact(size_of::()) - .map(|c| u64::from_be_bytes(c.try_into().unwrap()) & m) + .as_chunks::<{ size_of::() }>() + .0 + .iter() + .map(|c| u64::from_be_bytes(*c) & m) .collect(); Ok(table) }