Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1bf65587 authored by Amith Yamasani's avatar Amith Yamasani Committed by Android Git Automerger
Browse files

am 4611b578: Merge change I6c27819c into eclair-mr2

Merge commit '4611b578' into eclair-mr2-plus-aosp

* commit '4611b578':
  Fix for #2185627 : ArrayIndexOutOfBounds in BinaryDictionary.getWords()
parents 555ddf7a 4611b578
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -51,6 +51,7 @@ Dictionary::~Dictionary()
int Dictionary::getSuggestions(int *codes, int codesSize, unsigned short *outWords, int *frequencies,
        int maxWordLength, int maxWords, int maxAlternatives, int skipPos)
{
    int suggWords;
    mFrequencies = frequencies;
    mOutputChars = outWords;
    mInputCodes = codes;
@@ -58,14 +59,16 @@ int Dictionary::getSuggestions(int *codes, int codesSize, unsigned short *outWor
    mMaxAlternatives = maxAlternatives;
    mMaxWordLength = maxWordLength;
    mMaxWords = maxWords;
    mWords = 0;
    mSkipPos = skipPos;
    mMaxEditDistance = mInputLength < 5 ? 2 : mInputLength / 2;

    getWordsRec(0, 0, mInputLength * 3, false, 1, 0, 0);

    if (DEBUG_DICT) LOGI("Returning %d words", mWords);
    return mWords;
    // Get the word count
    suggWords = 0;
    while (suggWords < mMaxWords && mFrequencies[suggWords] > 0) suggWords++;
    if (DEBUG_DICT) LOGI("Returning %d words", suggWords);
    return suggWords;
}

unsigned short
@@ -138,9 +141,6 @@ Dictionary::addWord(unsigned short *word, int length, int frequency)
            *dest++ = *word++;
        }
        *dest = 0; // NULL terminate
        // Update the word count
        mWords = 0;
        while (mFrequencies[mWords] > 0) mWords++;
        if (DEBUG_DICT) LOGI("Added word at %d\n", insertAt);
        return true;
    }
+0 −1
Original line number Diff line number Diff line
@@ -60,7 +60,6 @@ private:
    int *mFrequencies;
    int mMaxWords;
    int mMaxWordLength;
    int mWords;
    unsigned short *mOutputChars;
    int *mInputCodes;
    int mInputLength;