in myfaces-html5-core/src/main/java/org/apache/myfaces/html5/renderkit/util/Html5RendererUtils.java [662:704]
public static String escapeJavaScriptForChain(String javaScript)
{
// first replace \' with \\'
//String escaped = StringUtils.replace(javaScript, "\\'", "\\\\'");
// then replace ' with \'
// (this will replace every \' in the original to \\\')
//escaped = StringUtils.replace(escaped, '\'', "\\'");
//return escaped;
StringBuffer out = null;
for (int pos = 0; pos < javaScript.length(); pos++)
{
char c = javaScript.charAt(pos);
if (c == '\\' || c == '\'')
{
if (out == null)
{
out = new StringBuffer(javaScript.length() + 8);
if (pos > 0)
{
out.append(javaScript, 0, pos);
}
}
out.append('\\');
}
if (out != null)
{
out.append(c);
}
}
if (out == null)
{
return javaScript;
}
else
{
return out.toString();
}
}