mirror of
https://github.com/TheFunny/TelegramTwitterMediaBot.git
synced 2026-09-23 23:32:05 +00:00
fix(lint): resolve clippy warnings from rust 1.98
- photo.rs: chunks_exact(4)/(2) -> as_chunks::<N>().0 (chunks_exact_to_as_chunks, the new lint prefers the compile-time-checked slice split) - send.rs: box the Task inside SendError so the error fits the result_large_err limit (Task is ~400 bytes; the error now moves through Result as a pointer); unbox with *task at the two enqueue_retry call sites (handlers/urls.rs, handlers/callback.rs) cargo clippy --workspace --all-targets is now warning-free; the remaining proc-macro-error2 future-incompat note is upstream (teloxide -> aquamarine) and unfixable locally. Full test suite passes.
This commit is contained in:
@@ -122,7 +122,7 @@ fn output_channels(color: png::ColorType) -> usize {
|
||||
/// white; 16-bit per channel was already stripped to 8-bit at decode.
|
||||
fn flatten_rgba_to_rgb(rgba: &[u8]) -> Vec<u8> {
|
||||
let mut rgb = Vec::with_capacity(rgba.len() / 4 * 3);
|
||||
for px in rgba.chunks_exact(4) {
|
||||
for px in rgba.as_chunks::<4>().0 {
|
||||
let a = px[3] as u32;
|
||||
for v in &px[..3] {
|
||||
// Over white: C = C*a/255 + 255*(1 - a/255).
|
||||
@@ -178,7 +178,9 @@ fn encode_jpeg(pix: &PixBuf, w: u32, h: u32) -> Result<Vec<u8>, String> {
|
||||
PixBuf::GrayAlpha(v) => {
|
||||
// JPEG has no alpha: composite onto white, output as gray.
|
||||
let gray: Vec<u8> = v
|
||||
.chunks_exact(2)
|
||||
.as_chunks::<2>()
|
||||
.0
|
||||
.iter()
|
||||
.map(|px| {
|
||||
let (g, a) = (px[0] as u32, px[1] as u32);
|
||||
((g * a + 255 * (255 - a)) / 255).min(255) as u8
|
||||
|
||||
Reference in New Issue
Block a user