diff --git a/android/src/com/google/zxing/client/android/result/ResultHandler.java b/android/src/com/google/zxing/client/android/result/ResultHandler.java index e26c49377..7afb654cf 100644 --- a/android/src/com/google/zxing/client/android/result/ResultHandler.java +++ b/android/src/com/google/zxing/client/android/result/ResultHandler.java @@ -467,19 +467,18 @@ public abstract class ResultHandler { } catch (UnsupportedEncodingException e) { // can't happen; UTF-8 is always supported. Continue, I guess, without encoding } - String url = text; + String url = customProductSearch; if (rawResult != null) { // Replace %f but only if it doesn't seem to be a hex escape sequence. This remains // problematic but avoids the more surprising problem of breaking escapes - url = url.replace("%f(?![0-9a-f])", rawResult.getBarcodeFormat().toString()); + url = url.replaceFirst("%f(?![0-9a-f])", rawResult.getBarcodeFormat().toString()); if (url.contains("%t")) { ParsedResult parsedResultAgain = ResultParser.parseResult(rawResult); url = url.replace("%t", parsedResultAgain.getType().toString()); } } // Replace %s last as it might contain itself %f or %t - url = customProductSearch.replace("%s", url); - return url; + return url.replace("%s", text); } } diff --git a/zxing.appspot.com/pom.xml b/zxing.appspot.com/pom.xml index e70311c5f..0f4073b64 100644 --- a/zxing.appspot.com/pom.xml +++ b/zxing.appspot.com/pom.xml @@ -43,7 +43,7 @@ - 2.6.0 + 2.6.1-rc2