Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorslewis2008-09-28 16:21:39 +0000
committerslewis2008-09-28 16:21:39 +0000
commitec1f1e4dc98a03402724aa7eb08e71d2e0bc5a24 (patch)
treeb7d5780b60769e14684261c8d46f0911a5e2070c
parent2cd76715d32eb003516a31aeb8e71a794f1af898 (diff)
downloadorg.eclipse.ecf-ec1f1e4dc98a03402724aa7eb08e71d2e0bc5a24.tar.gz
org.eclipse.ecf-ec1f1e4dc98a03402724aa7eb08e71d2e0bc5a24.tar.xz
org.eclipse.ecf-ec1f1e4dc98a03402724aa7eb08e71d2e0bc5a24.zip
Fix for unauthorized use of String.replace.
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/identity/XMPPID.java11
1 files changed, 6 insertions, 5 deletions
diff --git a/providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/identity/XMPPID.java b/providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/identity/XMPPID.java
index 2ea878778..c69a6f7cb 100644
--- a/providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/identity/XMPPID.java
+++ b/providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/identity/XMPPID.java
@@ -17,6 +17,7 @@ import java.util.Iterator;
import org.eclipse.ecf.core.identity.BaseID;
import org.eclipse.ecf.core.identity.Namespace;
+import org.eclipse.ecf.core.util.StringUtils;
import org.eclipse.ecf.internal.provider.xmpp.Messages;
import org.eclipse.ecf.presence.im.IChatID;
@@ -38,8 +39,8 @@ public class XMPPID extends BaseID implements IChatID {
}
}
- public CharSequence getAsCharSequence() {
- return buf;
+ public String getAsString() {
+ return buf.toString();
}
}
@@ -66,7 +67,7 @@ public class XMPPID extends BaseID implements IChatID {
for (final Iterator i = escapeTable.keySet().iterator(); i.hasNext();) {
final String key = (String) i.next();
final XMPPEscape escape = (XMPPEscape) escapeTable.get(key);
- node = node.replace(new StringBuffer(key), escape.getAsCharSequence());
+ node = StringUtils.replaceAll(node, key, escape.getAsString());
}
return node;
}
@@ -74,7 +75,7 @@ public class XMPPID extends BaseID implements IChatID {
static String fixPercentEscape(String src) {
if (src == null)
return null;
- return src.replaceAll("%", "%25");
+ return StringUtils.replaceAll(src, "%", "%25");
}
public static String unfixEscapeInNode(String node) {
@@ -83,7 +84,7 @@ public class XMPPID extends BaseID implements IChatID {
for (final Iterator i = escapeTable.keySet().iterator(); i.hasNext();) {
final String key = (String) i.next();
final XMPPEscape escape = (XMPPEscape) escapeTable.get(key);
- node = node.replace(escape.getAsCharSequence(), new StringBuffer(key));
+ node = StringUtils.replaceAll(node, escape.getAsString(), key);
}
return node;
}

Back to the top