From 3db5d719d2bf1ddff58bf340486d1ca856d2f65a Mon Sep 17 00:00:00 2001 From: Lilith Schier Date: Thu, 20 Aug 2026 18:20:40 +0200 Subject: [PATCH] bail on oversized result --- src/main.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main.rs b/src/main.rs index dc7ad18..e2638a5 100644 --- a/src/main.rs +++ b/src/main.rs @@ -207,9 +207,15 @@ pub async fn roll(ctx: &Context, command: &CommandInteraction) -> anyhow::Result .buffers .push(format!("-# Expected value: {ev} | Seed: {seed}")); - let text_components = Arc::into_inner(discord_md) + let discord_md = Arc::into_inner(discord_md) .unwrap() - .into_inner()? + .into_inner()?; + + if discord_md.character_count() > 4000 { + bail!("Resulting message was too long, please roll fewer dice!"); + } + + let text_components = discord_md .buffers .into_iter() .map(|text| CreateContainerComponent::TextDisplay(CreateTextDisplay::new(text)))