Skip to content

Conversation

Copy link

Copilot AI commented Nov 2, 2025

Message link embeds were displaying spoilered images directly, bypassing Discord's spoiler protection. Discord marks spoilered attachments with SPOILER_ filename prefix.

Changes

  • Attachment processing: Check filename.startsWith("SPOILER_") before embedding images/videos. Spoilered media now renders as file links instead.
  • Embed media processing: Skip thumbnails/images/videos containing SPOILER_ in their URLs when building embeds from linked messages.
  • Flag management: Only set setImg/setVideo/setThumb flags when media is actually embedded, allowing fallback to non-spoilered alternatives if first item is spoilered.
msg.attachments.forEach { a ->
    val isSpoiler = a.filename.startsWith("SPOILER_", ignoreCase = true)
    
    if (a.height != null && !isSpoiler) {
        eb.setImage(a.url, a.proxyUrl, a.height, a.width)
    } else {
        // Render as file link
    }
}

Version bumped to 1.4.6.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • dl.google.com
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx2048M -Dfile.encoding=UTF-8 -Duser.country -Duser.language=en -Duser.variant -cp /home/REDACTED/.gradle/wrapper/dists/gradle-7.6.1-bin/2clxi94ab3brv6467628wnxmd/gradle-7.6.1/lib/gradle-launcher-7.6.1.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.6.1 (dns block)
  • jitpack.io
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx2048M -Dfile.encoding=UTF-8 -Duser.country -Duser.language=en -Duser.variant -cp /home/REDACTED/.gradle/wrapper/dists/gradle-7.6.1-bin/2clxi94ab3brv6467628wnxmd/gradle-7.6.1/lib/gradle-launcher-7.6.1.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.6.1 (dns block)
  • maven.aliucord.com
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx2048M -Dfile.encoding=UTF-8 -Duser.country -Duser.language=en -Duser.variant -cp /home/REDACTED/.gradle/wrapper/dists/gradle-7.6.1-bin/2clxi94ab3brv6467628wnxmd/gradle-7.6.1/lib/gradle-launcher-7.6.1.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.6.1 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>MessageLinkEmbeds don't respect image spoilers</issue_title>
<issue_description>If someone links to a message with a spoilered image, the message link embed will just show the image.

Image</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 3 commits November 2, 2025 21:28
Co-authored-by: Vendicated <45497981+Vendicated@users.noreply.github.com>
Co-authored-by: Vendicated <45497981+Vendicated@users.noreply.github.com>
Co-authored-by: Vendicated <45497981+Vendicated@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix message link embeds to respect image spoilers Skip spoilered media in message link embeds Nov 2, 2025
Copilot AI requested a review from Vendicated November 2, 2025 21:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MessageLinkEmbeds don't respect image spoilers

3 participants