From 9e4071bc0213848db5a5f80e8fed3957b5d5805e Mon Sep 17 00:00:00 2001 From: freya02 <41875020+freya022@users.noreply.github.com> Date: Mon, 14 Oct 2024 23:50:55 +0200 Subject: [PATCH] Prevent setting emoji for premium buttons --- .../jda/api/interactions/components/buttons/Button.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/dv8tion/jda/api/interactions/components/buttons/Button.java b/src/main/java/net/dv8tion/jda/api/interactions/components/buttons/Button.java index f507bf1b47..91ea5fa61d 100644 --- a/src/main/java/net/dv8tion/jda/api/interactions/components/buttons/Button.java +++ b/src/main/java/net/dv8tion/jda/api/interactions/components/buttons/Button.java @@ -167,7 +167,8 @@ default Button withDisabled(boolean disabled) @CheckReturnValue default Button withEmoji(@Nullable Emoji emoji) { - return new ButtonImpl(getId(), getLabel(), getStyle(), getUrl(), getSku(), isDisabled(), emoji); + Checks.check(getStyle() != ButtonStyle.PREMIUM, "Premium components cannot have emojis"); + return new ButtonImpl(getId(), getLabel(), getStyle(), getUrl(), null, isDisabled(), emoji); } /** @@ -258,7 +259,7 @@ default Button withUrl(@Nonnull String url) default Button withSku(@Nonnull SkuSnowflake sku) { Checks.notNull(sku, "SKU"); - return new ButtonImpl(null, getLabel(), ButtonStyle.PREMIUM, null, sku, isDisabled(), getEmoji()); + return new ButtonImpl(null, getLabel(), ButtonStyle.PREMIUM, null, sku, isDisabled(), null); } /**