0

この時点で、これらのリークがCoreDataに関連するかどうかわかりません。この同じアプリの他の部分で明らかに異なる理由 - 私の他の質問を参照してください。another stack overflow questionABPeoplePickerNavigationControllerとコアデータを使用してアプリで48バイトのリークが発生する

しかし、関係がないと仮定して、私は、ユーザーがオプションを選択することに基づいて、ABPeoplePickerを表示するviewControllerを持っています。しかし、連絡先を選択するかどうかにかかわらず、私が漏れているピッカーを提示するだけのようです。

- (void)peoplePickerNavigationControllerDidCancel:(ABPeoplePickerNavigationController *)peoplePicker 
{ 
    [self dismissModalViewControllerAnimated:YES]; 
} 

- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker 
     shouldContinueAfterSelectingPerson:(ABRecordRef)person 
{ 
    return YES; 
} 

- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker 
     shouldContinueAfterSelectingPerson:(ABRecordRef)person 
           property:(ABPropertyID)property 
           identifier:(ABMultiValueIdentifier)identifier 
{ 
    ABMultiValueRef emails = ABRecordCopyValue(person, property); 

    if(userEmailString) 
     [userEmailString release]; 

    userEmailString = (NSString*)ABMultiValueCopyValueAtIndex(emails, identifier); 

    CFRelease(emails); 

    [[NSNotificationCenter defaultCenter] postNotificationName:@"recipientEmailDidUpdateNotification" 
                 object:self]; 
    return NO; 
} 

そして、念のため、userEmailStringがコントローラの保持NSStringのプロパティである(意味:

- (void)showPeoplePickerController 
{ 
    ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init]; 
    picker.displayedProperties = [NSArray arrayWithObject:[NSNumber numberWithInt:kABPersonEmailProperty]]; 
    picker.peoplePickerDelegate = self; 
    [self presentModalViewController:picker animated:YES]; 
    [picker release]; 
} 

および以下として実装デリゲート方法:

ピッカーを提示するためのコードであります私もself.userEmailString = blahのために行くことができます)。

これらはInstrumentsのスクリーンショットであり、漏れを報告しています。しかし、ピッカーがリリースされていないと思っていることに気づいてください。私はCFRelease()を代わりにやろうとしました...でも同じです。とにかく

enter image description here

enter image description here

enter image description here

答えて

関連する問題