From c4dac0c3e65708d21f544bc39676c6688763d991 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Wed, 18 Mar 2026 11:11:43 -0700 Subject: [PATCH] fix chunk manifest image transforms --- seaweed-volume/src/server/handlers.rs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/seaweed-volume/src/server/handlers.rs b/seaweed-volume/src/server/handlers.rs index 57d39d51d..42b82ddee 100644 --- a/seaweed-volume/src/server/handlers.rs +++ b/seaweed-volume/src/server/handlers.rs @@ -3279,6 +3279,25 @@ fn try_expand_chunk_manifest( } } + // Go's tryHandleChunkedFile applies crop then resize to expanded chunk data + // (L344-345: conditionallyCropImages, conditionallyResizeImages). + let cm_ext = if !filename.is_empty() { + if let Some(dot_pos) = filename.rfind('.') { + filename[dot_pos..].to_lowercase() + } else { + String::new() + } + } else { + String::new() + }; + let mut result = result; + if is_image_crop_ext(&cm_ext) { + result = maybe_crop_image(&result, &cm_ext, query); + } + if is_image_resize_ext(&cm_ext) { + result = maybe_resize_image(&result, &cm_ext, query); + } + if *method == Method::HEAD { response_headers.insert( header::CONTENT_LENGTH,