From aaceb5bdeeba585b3c50bec8645483143606ad74 Mon Sep 17 00:00:00 2001 From: Paul Makles Date: Wed, 8 Jun 2022 14:11:24 +0100 Subject: [PATCH] fix: sub-validate message structs --- crates/delta/src/routes/channels/message_edit.rs | 4 ++++ crates/delta/src/routes/channels/message_send.rs | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/crates/delta/src/routes/channels/message_edit.rs b/crates/delta/src/routes/channels/message_edit.rs index e02b5dc8..09504e45 100644 --- a/crates/delta/src/routes/channels/message_edit.rs +++ b/crates/delta/src/routes/channels/message_edit.rs @@ -71,6 +71,10 @@ pub async fn req( new_embeds.clear(); for embed in embeds { + embed + .validate() + .map_err(|error| Error::FailedValidation { error })?; + new_embeds.push(embed.clone().into_embed(db, message.id.clone()).await?); } } diff --git a/crates/delta/src/routes/channels/message_send.rs b/crates/delta/src/routes/channels/message_send.rs index 056aab89..73cc4f56 100644 --- a/crates/delta/src/routes/channels/message_send.rs +++ b/crates/delta/src/routes/channels/message_send.rs @@ -164,6 +164,10 @@ pub async fn message_send( let mut embeds = vec![]; if let Some(sendable_embeds) = data.embeds { for sendable_embed in sendable_embeds { + sendable_embed + .validate() + .map_err(|error| Error::FailedValidation { error })?; + embeds.push(sendable_embed.into_embed(db, message_id.clone()).await?) } }