From a79ae7d1a28c8afd8839180a91cd0ece67ebe989 Mon Sep 17 00:00:00 2001
From: strawberry <strawberry@puppygock.gay>
Date: Fri, 23 Aug 2024 22:37:21 -0400
Subject: [PATCH] add missing MXC URI prefix bytes

Signed-off-by: strawberry <strawberry@puppygock.gay>
---
 src/service/media/data.rs | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/service/media/data.rs b/src/service/media/data.rs
index f5de2bbe..6b1d9cf0 100644
--- a/src/service/media/data.rs
+++ b/src/service/media/data.rs
@@ -37,7 +37,9 @@ impl Data {
 		content_disposition: Option<&ContentDisposition>, content_type: Option<&str>,
 	) -> Result<Vec<u8>> {
 		let mut key: Vec<u8> = Vec::new();
+		key.extend_from_slice(b"mxc://");
 		key.extend_from_slice(mxc.server_name.as_bytes());
+		key.extend_from_slice(b"/");
 		key.extend_from_slice(mxc.media_id.as_bytes());
 		key.push(0xFF);
 		key.extend_from_slice(&width.to_be_bytes());
@@ -61,7 +63,9 @@ impl Data {
 
 		if let Some(user) = user {
 			let mut key: Vec<u8> = Vec::new();
+			key.extend_from_slice(b"mxc://");
 			key.extend_from_slice(mxc.server_name.as_bytes());
+			key.extend_from_slice(b"/");
 			key.extend_from_slice(mxc.media_id.as_bytes());
 			let user = user.as_bytes().to_vec();
 			self.mediaid_user.insert(&key, &user)?;
@@ -74,7 +78,9 @@ impl Data {
 		debug!("MXC URI: {mxc}");
 
 		let mut prefix: Vec<u8> = Vec::new();
+		prefix.extend_from_slice(b"mxc://");
 		prefix.extend_from_slice(mxc.server_name.as_bytes());
+		prefix.extend_from_slice(b"/");
 		prefix.extend_from_slice(mxc.media_id.as_bytes());
 		prefix.push(0xFF);
 
@@ -101,7 +107,9 @@ impl Data {
 		debug!("MXC URI: {mxc}");
 
 		let mut prefix: Vec<u8> = Vec::new();
+		prefix.extend_from_slice(b"mxc://");
 		prefix.extend_from_slice(mxc.server_name.as_bytes());
+		prefix.extend_from_slice(b"/");
 		prefix.extend_from_slice(mxc.media_id.as_bytes());
 		prefix.push(0xFF);
 
@@ -122,7 +130,9 @@ impl Data {
 
 	pub(super) fn search_file_metadata(&self, mxc: &Mxc<'_>, width: u32, height: u32) -> Result<Metadata> {
 		let mut prefix: Vec<u8> = Vec::new();
+		prefix.extend_from_slice(b"mxc://");
 		prefix.extend_from_slice(mxc.server_name.as_bytes());
+		prefix.extend_from_slice(b"/");
 		prefix.extend_from_slice(mxc.media_id.as_bytes());
 		prefix.push(0xFF);
 		prefix.extend_from_slice(&width.to_be_bytes());