diff options
author | 2013-08-22 07:07:28 -0700 | |
---|---|---|
committer | 2013-08-22 07:07:28 -0700 | |
commit | e3ffbb377b04fd8b293d5cd4d057c2509746917a (patch) | |
tree | 7fa735f7aa3a7b4bb3de752a81ecb2a8185123aa /java/src/com/android/inputmethod/latin/makedict/BinaryDictEncoderUtils.java | |
parent | 9e1bd9bbc2d886c36c71c0a9abbf554b934b9b63 (diff) | |
parent | 4929f8516c2b3582805e25e69d2b0b5a71bae53f (diff) | |
download | latinime-e3ffbb377b04fd8b293d5cd4d057c2509746917a.tar.gz latinime-e3ffbb377b04fd8b293d5cd4d057c2509746917a.tar.xz latinime-e3ffbb377b04fd8b293d5cd4d057c2509746917a.zip |
am 4929f851: Merge "Fix writePlacedNode."
* commit '4929f8516c2b3582805e25e69d2b0b5a71bae53f':
Fix writePlacedNode.
Diffstat (limited to 'java/src/com/android/inputmethod/latin/makedict/BinaryDictEncoderUtils.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/makedict/BinaryDictEncoderUtils.java | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/java/src/com/android/inputmethod/latin/makedict/BinaryDictEncoderUtils.java b/java/src/com/android/inputmethod/latin/makedict/BinaryDictEncoderUtils.java index 71c1d425c..40effb5e3 100644 --- a/java/src/com/android/inputmethod/latin/makedict/BinaryDictEncoderUtils.java +++ b/java/src/com/android/inputmethod/latin/makedict/BinaryDictEncoderUtils.java @@ -108,7 +108,7 @@ public class BinaryDictEncoderUtils { * like address lists do. */ static int getShortcutListSize(final ArrayList<WeightedString> shortcutList) { - if (null == shortcutList) return 0; + if (null == shortcutList || shortcutList.isEmpty()) return 0; int size = FormatSpec.GROUP_SHORTCUT_LIST_SIZE_SIZE; for (final WeightedString shortcut : shortcutList) { size += getShortcutSize(shortcut); @@ -601,8 +601,9 @@ public class BinaryDictEncoderUtils { private static byte makeCharGroupFlags(final CharGroup group, final int groupAddress, final int childrenOffset, final FormatOptions formatOptions) { return (byte) makeCharGroupFlags(group.mChars.length > 1, group.mFrequency >= 0, - getByteSize(childrenOffset), group.mShortcutTargets != null, group.mBigrams != null, - group.mIsNotAWord, group.mIsBlacklistEntry, formatOptions); + getByteSize(childrenOffset), + group.mShortcutTargets != null && !group.mShortcutTargets.isEmpty(), + group.mBigrams != null, group.mIsNotAWord, group.mIsBlacklistEntry, formatOptions); } /** @@ -795,7 +796,7 @@ public class BinaryDictEncoderUtils { groupAddress += shift; // Write shortcuts - if (null != group.mShortcutTargets) { + if (null != group.mShortcutTargets && !group.mShortcutTargets.isEmpty()) { final int indexOfShortcutByteSize = index; index += FormatSpec.GROUP_SHORTCUT_LIST_SIZE_SIZE; groupAddress += FormatSpec.GROUP_SHORTCUT_LIST_SIZE_SIZE; |