1
0
mirror of https://git.ngram.ca/OpenJam/rc-servers synced 2026-08-23 23:08:52 +00:00

Fix clan avatars not displaying in some cases

This commit is contained in:
NG (Graham)
2026-04-06 10:22:10 -04:00
parent 8e54676661
commit 8c2a90cea7

View File

@@ -2,7 +2,7 @@ use actix_web::{get, post, web::{Data, Path, Bytes}, Responder};
#[get("/clanavatar/Live/{name}")]
pub async fn get(cli: Data<crate::cli::CliArgs>, name: Path<String>) -> impl Responder {
let path = std::path::PathBuf::from(&cli.data_robocraft).join("clanavatar").join(format!("{}.jpg", *name));
let path = std::path::PathBuf::from(&cli.data_robocraft).join("clanavatar").join(format!("{}.jpg", name.to_lowercase()));
log::debug!("RC asset at {} (exists? {})", path.display(), path.exists());
if path.exists() {
actix_files::NamedFile::open_async(path).await
@@ -15,7 +15,7 @@ pub async fn get(cli: Data<crate::cli::CliArgs>, name: Path<String>) -> impl Res
#[post("/clanavatar/Live/{name}")]
pub async fn post(cli: Data<crate::cli::CliArgs>, auth: Data<crate::robocraft::IntercomAuth>, name: Path<String>, body: Bytes, req: actix_web::HttpRequest) -> Result<actix_web::HttpResponse, super::IntercomOpError> {
auth.validate(&req, &name)?;
let path = std::path::PathBuf::from(&cli.data_robocraft).join("clanavatar").join(format!("{}.jpg", *name));
let path = std::path::PathBuf::from(&cli.data_robocraft).join("clanavatar").join(format!("{}.jpg", name.to_lowercase()));
log::debug!("Saving clanavatar for {} to {}: {}B", name, path.display(), body.len());
std::fs::write(path, &body).map_err(super::IntercomOpError::Io)?;
Ok(actix_web::HttpResponse::NoContent().finish())