diff --git a/src/main.rs b/src/main.rs
index d280a05..47e33d8 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -55,8 +55,9 @@ struct IndexForm {
#[post("/", data = "")]
fn submit(input: Form) -> Redirect {
let id = generate_id();
- store_paste(id.clone(), input.into_inner().val);
- Redirect::to(uri!(show_paste: id))
+ let uri = uri!(show_paste: &id);
+ store_paste(id, input.into_inner().val);
+ Redirect::to(uri)
}
#[put("/", data = "")]
@@ -65,11 +66,13 @@ fn submit_raw(input: Data, host: HostHeader) -> std::io::Result {
input.open().take(1024 * 1000).read_to_string(&mut data)?;
let id = generate_id();
- store_paste(id.clone(), data);
+ let uri = uri!(show_paste: &id);
+
+ store_paste(id, data);
match *host {
- Some(host) => Ok(format!("https://{}{}", host, uri!(show_paste: id))),
- None => Ok(id),
+ Some(host) => Ok(format!("https://{}{}", host, uri)),
+ None => Ok(format!("{}", uri)),
}
}