diff --git a/sdk/src/main/java/com/atlan/util/StringUtils.java b/sdk/src/main/java/com/atlan/util/StringUtils.java index df74c65161..36ef0c73c1 100644 --- a/sdk/src/main/java/com/atlan/util/StringUtils.java +++ b/sdk/src/main/java/com/atlan/util/StringUtils.java @@ -93,7 +93,14 @@ public static String encodeContent(String decoded) { * @return decoded README content (HTML) */ public static String decodeContent(String encoded) { - return encoded == null ? null : URLDecoder.decode(encoded.replace("%20", "+"), StandardCharsets.UTF_8); + if (encoded == null) return null; + try { + return URLDecoder.decode(encoded.replace("%20", "+"), StandardCharsets.UTF_8); + } catch (IllegalArgumentException e) { + // README content may contain raw % in CSS (e.g. width:100%;) that was never + // URL-encoded — return as-is rather than crashing the entire export + return encoded; + } } /**