@@ -422,7 +422,7 @@ public nint PeopleCount {
422422 public ABPerson [ ] GetPeople ( )
423423 {
424424 var cfArrayRef = ABAddressBookCopyArrayOfAllPeople ( GetCheckedHandle ( ) ) ;
425- return NSArray . ArrayFromHandle ( cfArrayRef , h => new ABPerson ( h , this ) ) ;
425+ return NSArray . ArrayFromHandle ( cfArrayRef , h => new ABPerson ( h , this ) , releaseHandle : true ) ;
426426 }
427427
428428 [ DllImport ( Constants . AddressBookLibrary ) ]
@@ -438,7 +438,7 @@ public ABPerson [] GetPeople (ABRecord source)
438438 ObjCRuntime . ThrowHelper . ThrowArgumentNullException ( nameof ( source ) ) ;
439439 var cfArrayRef = ABAddressBookCopyArrayOfAllPeopleInSource ( GetCheckedHandle ( ) , source . Handle ) ;
440440 GC . KeepAlive ( source ) ;
441- return NSArray . ArrayFromHandle ( cfArrayRef , l => new ABPerson ( l , this ) ) ;
441+ return NSArray . ArrayFromHandle ( cfArrayRef , l => new ABPerson ( l , this ) , releaseHandle : true ) ;
442442 }
443443
444444 [ DllImport ( Constants . AddressBookLibrary ) ]
@@ -455,7 +455,7 @@ public ABPerson [] GetPeople (ABRecord source, ABPersonSortBy sortOrdering)
455455 ObjCRuntime . ThrowHelper . ThrowArgumentNullException ( nameof ( source ) ) ;
456456 var cfArrayRef = ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering ( GetCheckedHandle ( ) , source . Handle , sortOrdering ) ;
457457 GC . KeepAlive ( source ) ;
458- return NSArray . ArrayFromHandle ( cfArrayRef , l => new ABPerson ( l , this ) ) ;
458+ return NSArray . ArrayFromHandle ( cfArrayRef , l => new ABPerson ( l , this ) , releaseHandle : true ) ;
459459 }
460460
461461 [ DllImport ( Constants . AddressBookLibrary ) ]
@@ -490,7 +490,7 @@ public nint GroupCount {
490490 public ABGroup [ ] GetGroups ( )
491491 {
492492 var cfArrayRef = ABAddressBookCopyArrayOfAllGroups ( GetCheckedHandle ( ) ) ;
493- return NSArray . ArrayFromHandle ( cfArrayRef , h => new ABGroup ( h , this ) ) ;
493+ return NSArray . ArrayFromHandle ( cfArrayRef , h => new ABGroup ( h , this ) , releaseHandle : true ) ;
494494 }
495495
496496 [ DllImport ( Constants . AddressBookLibrary ) ]
@@ -507,7 +507,7 @@ public ABGroup [] GetGroups (ABRecord source)
507507
508508 var cfArrayRef = ABAddressBookCopyArrayOfAllGroupsInSource ( GetCheckedHandle ( ) , source . Handle ) ;
509509 GC . KeepAlive ( source ) ;
510- return NSArray . ArrayFromHandle ( cfArrayRef , l => new ABGroup ( l , this ) ) ;
510+ return NSArray . ArrayFromHandle ( cfArrayRef , l => new ABGroup ( l , this ) , releaseHandle : true ) ;
511511 }
512512
513513 [ DllImport ( Constants . AddressBookLibrary ) ]
@@ -720,7 +720,7 @@ public ABPerson [] GetPeopleWithName (string name)
720720 var nameHandle = CFString . CreateNative ( name ) ;
721721 try {
722722 var cfArrayRef = ABAddressBookCopyPeopleWithName ( Handle , nameHandle ) ;
723- return NSArray . ArrayFromHandle ( cfArrayRef , h => new ABPerson ( h , this ) ) ;
723+ return NSArray . ArrayFromHandle ( cfArrayRef , h => new ABPerson ( h , this ) , releaseHandle : true ) ;
724724 } finally {
725725 CFString . ReleaseNative ( nameHandle ) ;
726726 }
@@ -739,7 +739,7 @@ public ABPerson [] GetPeopleWithName (string name)
739739 public ABSource [ ] ? GetAllSources ( )
740740 {
741741 var cfArrayRef = ABAddressBookCopyArrayOfAllSources ( GetCheckedHandle ( ) ) ;
742- return NSArray . ArrayFromHandle ( cfArrayRef , h => new ABSource ( h , this ) ) ;
742+ return NSArray . ArrayFromHandle ( cfArrayRef , h => new ABSource ( h , this ) , releaseHandle : true ) ;
743743 }
744744
745745 [ DllImport ( Constants . AddressBookLibrary ) ]
0 commit comments