diff --git a/src/MacVim/MMCoreTextView.m b/src/MacVim/MMCoreTextView.m index cca0790330..19f5bfe1ed 100644 --- a/src/MacVim/MMCoreTextView.m +++ b/src/MacVim/MMCoreTextView.m @@ -1138,7 +1138,7 @@ - (CTLineRef)lineForCharacterString:(NSString *)string if (!strCache){ strCache = characterLines[key] = [[[NSCache alloc] init] autorelease]; } - CTLineRef line = (CTLineRef)[strCache objectForKey:string]; + CTLineRef line = (CTLineRef)[[strCache objectForKey:string] retain]; if (!line) { NSAttributedString *attrString = [[NSAttributedString alloc] initWithString:string @@ -1150,9 +1150,8 @@ - (CTLineRef)lineForCharacterString:(NSString *)string line = CTLineCreateWithAttributedString((CFAttributedStringRef)attrString); [attrString release]; [strCache setObject:(id)line forKey:[[string copy] autorelease]]; - CFRelease(line); } - return line; + return (CTLineRef)[(id)line autorelease]; } @end // MMCoreTextView (Private)