diff options
Diffstat (limited to 'org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java')
-rw-r--r-- | org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java index 225573048..1043d559f 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/utils/JSonHelper.java @@ -15,7 +15,7 @@ public final class JSonHelper { //JSON Characters public static final String BEGIN_BRACE = "{"; //$NON-NLS-1$ public static final String END_BRACE = "}"; //$NON-NLS-1$ - public static final String QUOTE = "\'"; //$NON-NLS-1$ + public static final String DOUBLEQUOTE = "\""; //$NON-NLS-1$ public static final String COLON = ":"; //$NON-NLS-1$ public static final String BEGIN_BRACKET = "["; //$NON-NLS-1$ public static final String END_BRACKET = "]"; //$NON-NLS-1$ @@ -52,8 +52,14 @@ public final class JSonHelper { public static final String TOPIC = "Topic"; //$NON-NLS-1$ public static final String NUMERIC_PATH = "NumericPath"; //$NON-NLS-1$ - public static String getQuotes(String str){ - return ((str != null)?QUOTE + str + QUOTE:""); //$NON-NLS-1$ + public static String getQuotes(String str) { + if (str == null) { + return ""; //$NON-NLS-1$ + } + if (str.indexOf(DOUBLEQUOTE) < 0) { + return DOUBLEQUOTE + str + DOUBLEQUOTE; + } + return DOUBLEQUOTE + str.replaceAll(DOUBLEQUOTE, "\\\\" + DOUBLEQUOTE) + DOUBLEQUOTE; //$NON-NLS-1$ } } |