diff --git a/G-Earth/src/main/java/gearth/services/internal_extensions/extensionstore/application/GExtensionStoreController.java b/G-Earth/src/main/java/gearth/services/internal_extensions/extensionstore/application/GExtensionStoreController.java index 077c701..d725c7a 100644 --- a/G-Earth/src/main/java/gearth/services/internal_extensions/extensionstore/application/GExtensionStoreController.java +++ b/G-Earth/src/main/java/gearth/services/internal_extensions/extensionstore/application/GExtensionStoreController.java @@ -187,11 +187,11 @@ public class GExtensionStoreController implements Initializable { webView.getEngine().executeScript(String.format("setHeading(\"%s\", \"%s\", \"%s\")", WebUtils.escapeHtmlNoBackslash(overview.header().iconUrl()), - WebUtils.escapeMessage(overview.header().title()), - WebUtils.escapeMessage(overview.header().description()) + WebUtils.escapeMessageAndQuotes(overview.header().title()), + WebUtils.escapeMessageAndQuotes(overview.header().description()) )); webView.getEngine().executeScript(String.format("setContentTitle(\"%s\")", - WebUtils.escapeMessage(overview.header().contentTitle()) + WebUtils.escapeMessageAndQuotes(overview.header().contentTitle()) )); }); } diff --git a/G-Earth/src/main/java/gearth/services/internal_extensions/extensionstore/application/WebUtils.java b/G-Earth/src/main/java/gearth/services/internal_extensions/extensionstore/application/WebUtils.java index c5bad15..7565b34 100644 --- a/G-Earth/src/main/java/gearth/services/internal_extensions/extensionstore/application/WebUtils.java +++ b/G-Earth/src/main/java/gearth/services/internal_extensions/extensionstore/application/WebUtils.java @@ -66,6 +66,11 @@ public class WebUtils { .replace("\r", "
"); } + public static String escapeMessageAndQuotes(String text) { + text = escapeMessage(text); + return text.replace("\"", """); + } + public static void clearElement(Element node) { while (node.hasChildNodes()) node.removeChild(node.getFirstChild());