NSString * lang_ = toString(lang);
SpellCheckResult result = SPELL_CHECK_FAILED;
int start = 0;
-
+ int length = [word_ length];
+
[speller->misspelled release];
speller->misspelled = nil;
- while (result == SPELL_CHECK_FAILED) {
+ while (result == SPELL_CHECK_FAILED && start < length) {
NSRange match = [speller->checker
checkSpellingOfString:word_
startingAt:start
result = SPELL_CHECK_LEARNED;
}
} else {
- int capacity = [speller->misspelled count] + 1;
+ NSUInteger capacity = [speller->misspelled count] + 1;
NSMutableArray * misspelled = [NSMutableArray arrayWithCapacity:capacity];
[misspelled addObjectsFromArray:speller->misspelled];
[misspelled addObject:[NSValue valueWithRange:match]];
void AppleSpeller_misspelledWord(AppleSpeller speller, int index, int * start, int * length)
{
- NSRange range = [[speller->misspelled objectAtIndex:index] rangeValue];
+ NSRange range = [[speller->misspelled objectAtIndex:(NSUInteger)index] rangeValue];
*start = range.location;
*length = range.length;
}