From aa858d9e52574921acd7ddd369729b2e8ee421c6 Mon Sep 17 00:00:00 2001 From: Alexey Kudravtsev Date: Mon, 10 Nov 2014 14:18:07 +0300 Subject: [PATCH] assertion for non-empty dictionary --- .../spellchecker/compress/UnitBitSet.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/spellchecker/src/com/intellij/spellchecker/compress/UnitBitSet.java b/spellchecker/src/com/intellij/spellchecker/compress/UnitBitSet.java index b1c0270bc621..01d427413943 100644 --- a/spellchecker/src/com/intellij/spellchecker/compress/UnitBitSet.java +++ b/spellchecker/src/com/intellij/spellchecker/compress/UnitBitSet.java @@ -1,3 +1,18 @@ +/* + * Copyright 2000-2014 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.intellij.spellchecker.compress; import org.jetbrains.annotations.NotNull; @@ -46,7 +61,7 @@ public class UnitBitSet { @NotNull public byte[] pack() { int meaningfulBits = 32 - Integer.numberOfLeadingZeros(alpha.getLastIndexUsed()); - assert meaningfulBits <= 8; + assert meaningfulBits <= 8 && meaningfulBits >= 1 : meaningfulBits + ": "+alpha.getLastIndexUsed(); byte[] result = new byte[(b.length * meaningfulBits + 7) / 8]; int byteNumber = 0;