aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2014-02-05 01:37:28 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2014-02-05 01:37:28 -0800
commit15377bc11fc7b06b2bf9583a84af5aeee1fff4e8 (patch)
tree36c36d01781e358cf23abf8711a06a173c51215e /java
parentfae9f8ba8a4b5b69a4de4159a2e0379b0d1ddc32 (diff)
parent02a534d13f5e04173efdf10a509de8aa85d2d6a5 (diff)
downloadlatinime-15377bc11fc7b06b2bf9583a84af5aeee1fff4e8.tar.gz
latinime-15377bc11fc7b06b2bf9583a84af5aeee1fff4e8.tar.xz
latinime-15377bc11fc7b06b2bf9583a84af5aeee1fff4e8.zip
am 02a534d1: Merge "Treat a sole "|" as a special case of key label"
* commit '02a534d13f5e04173efdf10a509de8aa85d2d6a5': Treat a sole "|" as a special case of key label
Diffstat (limited to 'java')
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java b/java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java
index 2a0dad678..2925a4b76 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java
@@ -84,14 +84,18 @@ public final class KeySpecParser {
}
private static int indexOfLabelEnd(final String keySpec) {
+ final int length = keySpec.length();
if (keySpec.indexOf(BACKSLASH) < 0) {
final int labelEnd = keySpec.indexOf(VERTICAL_BAR);
if (labelEnd == 0) {
+ if (length == 1) {
+ // Treat a sole vertical bar as a special case of key label.
+ return -1;
+ }
throw new KeySpecParserError("Empty label");
}
return labelEnd;
}
- final int length = keySpec.length();
for (int pos = 0; pos < length; pos++) {
final char c = keySpec.charAt(pos);
if (c == BACKSLASH && pos + 1 < length) {