Browse Source

Remove needle-name fallback in chunk manifest filename resolution

Go's tryHandleChunkedFile only falls back from URL filename to
manifest name. Rust had an extra fallback to needle.name that
Go does not perform, which could produce different
Content-Disposition filenames for chunk manifests.
rust-volume-server
Chris Lu 2 days ago
parent
commit
58445fa94e
  1. 6
      seaweed-volume/src/server/handlers.rs

6
seaweed-volume/src/server/handlers.rs

@ -2983,11 +2983,9 @@ fn try_expand_chunk_manifest(
} }
} }
// Determine filename: URL path filename, then needle name, then manifest name
// Determine filename: URL path filename, then manifest name
// (Go's tryHandleChunkedFile does NOT fall back to needle name)
let mut filename = extract_filename_from_path(path); let mut filename = extract_filename_from_path(path);
if filename.is_empty() && n.name_size > 0 {
filename = String::from_utf8_lossy(&n.name).to_string();
}
if filename.is_empty() && !manifest.name.is_empty() { if filename.is_empty() && !manifest.name.is_empty() {
filename = manifest.name.clone(); filename = manifest.name.clone();
} }

Loading…
Cancel
Save