* commit '0874939e1086baceba9c1f94ca98a7a5837e7813': Fix a test and crash with a better error message when reading
This commit is contained in:
commit
4afd8ff474
3 changed files with 7 additions and 3 deletions
|
@ -169,7 +169,8 @@ public class Ver3DictDecoder extends DictDecoder {
|
|||
addressPointer += PtNodeReader.readBigramAddresses(mDictBuffer, bigrams,
|
||||
addressPointer);
|
||||
if (bigrams.size() >= FormatSpec.MAX_BIGRAMS_IN_A_PTNODE) {
|
||||
MakedictLog.d("too many bigrams in a PtNode.");
|
||||
throw new RuntimeException("Too many bigrams in a PtNode (" + bigrams.size()
|
||||
+ " but max is " + FormatSpec.MAX_BIGRAMS_IN_A_PTNODE + ")");
|
||||
}
|
||||
} else {
|
||||
bigrams = null;
|
||||
|
|
|
@ -224,7 +224,8 @@ public class Ver4DictDecoder extends DictDecoder {
|
|||
if (0 == (bigramFlags & FormatSpec.FLAG_BIGRAM_SHORTCUT_ATTR_HAS_NEXT)) break;
|
||||
}
|
||||
if (bigrams.size() >= FormatSpec.MAX_BIGRAMS_IN_A_PTNODE) {
|
||||
MakedictLog.d("too many bigrams in a node.");
|
||||
throw new RuntimeException("Too many bigrams in a PtNode (" + bigrams.size()
|
||||
+ " but max is " + FormatSpec.MAX_BIGRAMS_IN_A_PTNODE + ")");
|
||||
}
|
||||
} else {
|
||||
bigrams = null;
|
||||
|
|
|
@ -104,7 +104,9 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
|
|||
}
|
||||
|
||||
sStarBigrams.put(0, new ArrayList<Integer>());
|
||||
for (int i = 1; i < sWords.size(); ++i) {
|
||||
// MAX - 1 because we added one above already
|
||||
final int maxBigrams = Math.min(sWords.size(), FormatSpec.MAX_BIGRAMS_IN_A_PTNODE - 1);
|
||||
for (int i = 1; i < maxBigrams; ++i) {
|
||||
sStarBigrams.get(0).add(i);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue