From 97030f17c4fb53fe999d1ceebc22e85004e462e3 Mon Sep 17 00:00:00 2001 From: Damian Minkov Date: Tue, 25 Jun 2013 17:04:25 +0300 Subject: [PATCH] Fixes PatternSyntaxException when dialing numbers containing '+'. --- .../sip/communicator/impl/gui/main/call/CallManager.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/net/java/sip/communicator/impl/gui/main/call/CallManager.java b/src/net/java/sip/communicator/impl/gui/main/call/CallManager.java index ca0e95ab4..f5504392e 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/CallManager.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/CallManager.java @@ -3692,7 +3692,8 @@ private static String resolveContactSource(String peerAddress) (index > -1) ? peerAddress.substring(0, index) : peerAddress; // searches for the whole number/username or with the @serverpart - Pattern p = Pattern.compile( + peerUserID = Pattern.quote(peerUserID); + Pattern pattern = Pattern.compile( "^(" + peerUserID + "|" + peerUserID + "@.*)$"); // Queries all available resolvers @@ -3706,7 +3707,7 @@ private static String resolveContactSource(String peerAddress) // use the pattern method of (ExtendedContactSourceService) ContactQuery query = ((ExtendedContactSourceService)contactSourceService) - .queryContactSource(p); + .queryContactSource(pattern); resolvers.add( new ResolveAddressToDisplayNameContactQueryListener(