diff options
author | 2014-02-05 01:37:28 -0800 | |
---|---|---|
committer | 2014-02-05 01:37:28 -0800 | |
commit | 15377bc11fc7b06b2bf9583a84af5aeee1fff4e8 (patch) | |
tree | 36c36d01781e358cf23abf8711a06a173c51215e /java | |
parent | fae9f8ba8a4b5b69a4de4159a2e0379b0d1ddc32 (diff) | |
parent | 02a534d13f5e04173efdf10a509de8aa85d2d6a5 (diff) | |
download | latinime-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.java | 6 |
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) { |