明确拒绝无效的处理图数据地址

处理图缺少 data URL 分隔符时直接返回格式错误。

避免先写入空文件再在后续裁切阶段暴露误导性错误。
This commit is contained in:
2026-09-10 19:03:29 +08:00
parent 5b441d389c
commit 1eb4bd5ec0
@@ -248,13 +248,12 @@ async fn write_processed_image_inner(processed_url: String, target: PathBuf) ->
processed_url.chars().count()
);
tokio::task::spawn_blocking(move || {
let encoded = processed_url
.split_once(',')
.map(|(_, data)| data)
.ok_or_else(|| "处理图 data URL 无效".to_string())?;
let processed_bytes = base64::engine::general_purpose::STANDARD
.decode(
processed_url
.split_once(',')
.map(|(_, data)| data)
.unwrap_or_default(),
)
.decode(encoded)
.map_err(|error| format!("解析处理图失败:{error}"))?;
let byte_len = processed_bytes.len();
fs::write(&target, processed_bytes)