diff --git a/APCAppCore/APCAppCore/Library/DataArchiverAndCollector/Trackers/APCCoreLocationTracker.m b/APCAppCore/APCAppCore/Library/DataArchiverAndCollector/Trackers/APCCoreLocationTracker.m index 21f552b3..12949cdb 100644 --- a/APCAppCore/APCAppCore/Library/DataArchiverAndCollector/Trackers/APCCoreLocationTracker.m +++ b/APCAppCore/APCAppCore/Library/DataArchiverAndCollector/Trackers/APCCoreLocationTracker.m @@ -103,6 +103,7 @@ - (instancetype)initWithIdentifier:(NSString*)identifier - (void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self]; + _locationManager.delegate = nil; } - (void)setupInitialLocationParameters @@ -126,6 +127,7 @@ - (void)startTracking if ([CLLocationManager locationServicesEnabled] == YES) { APCLogDebug(@"Start location tracking"); + self.locationManager.delegate = nil; self.locationManager = [[CLLocationManager alloc] init]; self.locationManager.delegate = self; diff --git a/APCAppCore/APCAppCore/Library/MedicationTrackingAppComponent/APCMedicationTrackerCalendarViewController.m b/APCAppCore/APCAppCore/Library/MedicationTrackingAppComponent/APCMedicationTrackerCalendarViewController.m index 57b936c4..a8ab8272 100644 --- a/APCAppCore/APCAppCore/Library/MedicationTrackingAppComponent/APCMedicationTrackerCalendarViewController.m +++ b/APCAppCore/APCAppCore/Library/MedicationTrackingAppComponent/APCMedicationTrackerCalendarViewController.m @@ -100,6 +100,12 @@ @interface APCMedicationTrackerCalendarViewController ( ) @implementation APCStudyDetailsViewController +- (void)dealloc { + _webView.delegate = nil; +} + - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. diff --git a/APCAppCore/APCAppCore/UI/Onboarding/APCStudyOverviewCollectionViewController.m b/APCAppCore/APCAppCore/UI/Onboarding/APCStudyOverviewCollectionViewController.m index 83cc437c..21ffcc60 100644 --- a/APCAppCore/APCAppCore/UI/Onboarding/APCStudyOverviewCollectionViewController.m +++ b/APCAppCore/APCAppCore/UI/Onboarding/APCStudyOverviewCollectionViewController.m @@ -84,6 +84,7 @@ -(void)viewDidAppear:(BOOL)animated { - (void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self name:APCConsentCompletedWithDisagreeNotification object:nil]; + _collectionView.delegate = nil; } - (void) goBackToSignUpJoin: (NSNotification *) __unused notification @@ -436,7 +437,7 @@ - (void)mailComposeController:(MFMailComposeViewController *)controller didFinis default: break; } - + controller.mailComposeDelegate = nil; [controller dismissViewControllerAnimated:YES completion:nil]; } diff --git a/APCAppCore/APCAppCore/UI/Onboarding/APCStudyOverviewViewController.m b/APCAppCore/APCAppCore/UI/Onboarding/APCStudyOverviewViewController.m index 497ea101..f379dad5 100644 --- a/APCAppCore/APCAppCore/UI/Onboarding/APCStudyOverviewViewController.m +++ b/APCAppCore/APCAppCore/UI/Onboarding/APCStudyOverviewViewController.m @@ -56,7 +56,6 @@ @interface APCStudyOverviewViewController () @implementation APCStudyOverviewViewController - #pragma mark - Lifecycle - (void)viewDidLoad { @@ -85,6 +84,8 @@ - (void)viewWillAppear:(BOOL)animated - (void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self name:APCConsentCompletedWithDisagreeNotification object:nil]; + _tableView.delegate = nil; + _tableView.dataSource = nil; } - (void)goBackToSignUpJoin:(NSNotification *) __unused notification diff --git a/APCAppCore/APCAppCore/UI/Onboarding/APCWebViewController.m b/APCAppCore/APCAppCore/UI/Onboarding/APCWebViewController.m index 8ce718c6..68e455ec 100644 --- a/APCAppCore/APCAppCore/UI/Onboarding/APCWebViewController.m +++ b/APCAppCore/APCAppCore/UI/Onboarding/APCWebViewController.m @@ -39,6 +39,10 @@ @interface APCWebViewController () @implementation APCWebViewController +- (void)dealloc { + _webview.delegate = nil; +} + -(void)viewDidLoad{ self.webview.delegate = self; self.webview.alpha = 0.0; diff --git a/APCAppCore/APCAppCore/UI/Onboarding/EmailVerification/APCChangeEmailViewController.m b/APCAppCore/APCAppCore/UI/Onboarding/EmailVerification/APCChangeEmailViewController.m index 66593a0f..034fe914 100644 --- a/APCAppCore/APCAppCore/UI/Onboarding/EmailVerification/APCChangeEmailViewController.m +++ b/APCAppCore/APCAppCore/UI/Onboarding/EmailVerification/APCChangeEmailViewController.m @@ -48,6 +48,10 @@ @interface APCChangeEmailViewController () @implementation APCChangeEmailViewController +- (void)dealloc { + _emailTextField.delegate = nil; +} + - (void)viewDidLoad { [super viewDidLoad]; diff --git a/APCAppCore/APCAppCore/UI/Onboarding/SignIn/APCForgotPasswordViewController.m b/APCAppCore/APCAppCore/UI/Onboarding/SignIn/APCForgotPasswordViewController.m index bd6872e4..0ecbd028 100644 --- a/APCAppCore/APCAppCore/UI/Onboarding/SignIn/APCForgotPasswordViewController.m +++ b/APCAppCore/APCAppCore/UI/Onboarding/SignIn/APCForgotPasswordViewController.m @@ -45,6 +45,10 @@ @interface APCForgotPasswordViewController () @implementation APCForgotPasswordViewController +- (void)dealloc { + _emailTextField.delegate = nil; +} + - (void)viewDidLoad { [super viewDidLoad]; diff --git a/APCAppCore/APCAppCore/UI/Onboarding/SignIn/APCSignInViewController.m b/APCAppCore/APCAppCore/UI/Onboarding/SignIn/APCSignInViewController.m index 458f8de4..44a9a589 100644 --- a/APCAppCore/APCAppCore/UI/Onboarding/SignIn/APCSignInViewController.m +++ b/APCAppCore/APCAppCore/UI/Onboarding/SignIn/APCSignInViewController.m @@ -46,6 +46,11 @@ @interface APCSignInViewController () @implementation APCSignInViewController +- (void)dealloc { + _userHandleTextField.delegate = nil; + _passwordTextField.delegate = nil; +} + #pragma mark - Life Cycle - (void)viewDidLoad { diff --git a/APCAppCore/APCAppCore/UI/Onboarding/SignUp/APCSignUpGeneralInfoViewController.m b/APCAppCore/APCAppCore/UI/Onboarding/SignUp/APCSignUpGeneralInfoViewController.m index 5361aa18..1d9f1e2d 100644 --- a/APCAppCore/APCAppCore/UI/Onboarding/SignUp/APCSignUpGeneralInfoViewController.m +++ b/APCAppCore/APCAppCore/UI/Onboarding/SignUp/APCSignUpGeneralInfoViewController.m @@ -634,10 +634,12 @@ - (void) imagePickerController:(UIImagePickerController *)picker didFinishPickin [self.profileImageButton setImage:image forState:UIControlStateNormal]; + picker.delegate = nil; [picker dismissViewControllerAnimated:YES completion:nil]; } - (void) imagePickerControllerDidCancel:(UIImagePickerController *)picker { + picker.delegate = nil; [picker dismissViewControllerAnimated:YES completion:nil]; } diff --git a/APCAppCore/APCAppCore/UI/Onboarding/SignUp/APCSignUpInfoViewController.m b/APCAppCore/APCAppCore/UI/Onboarding/SignUp/APCSignUpInfoViewController.m index 99795f0f..43c61595 100644 --- a/APCAppCore/APCAppCore/UI/Onboarding/SignUp/APCSignUpInfoViewController.m +++ b/APCAppCore/APCAppCore/UI/Onboarding/SignUp/APCSignUpInfoViewController.m @@ -54,6 +54,11 @@ @implementation APCSignUpInfoViewController @synthesize stepProgressBar; @synthesize user = _user; +- (void)dealloc { + _nameTextField.delegate = nil; + _emailTextField.delegate = nil; +} + - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. diff --git a/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCProfileViewController.m b/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCProfileViewController.m index 1dae8f83..eb530d5f 100644 --- a/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCProfileViewController.m +++ b/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCProfileViewController.m @@ -72,6 +72,10 @@ @interface APCProfileViewController () @implementation APCProfileViewController +- (void)dealloc { + _nameTextField.delegate = nil; +} + - (void)viewDidLoad { [super viewDidLoad]; NSString *build = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"]; @@ -1166,11 +1170,13 @@ - (void) imagePickerController:(UIImagePickerController *)picker didFinishPickin self.profileImage = image; [self.profileImageButton setImage:image forState:UIControlStateNormal]; self.user.profileImage = UIImagePNGRepresentation(image); + picker.delegate = nil; [picker dismissViewControllerAnimated:YES completion:nil]; } - (void) imagePickerControllerDidCancel:(UIImagePickerController *)picker { + picker.delegate = nil; [picker dismissViewControllerAnimated:YES completion:nil]; } diff --git a/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCSharingOptionsViewController.m b/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCSharingOptionsViewController.m index a438db8b..6e966a7c 100644 --- a/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCSharingOptionsViewController.m +++ b/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCSharingOptionsViewController.m @@ -55,6 +55,11 @@ @interface APCSharingOptionsViewController() @implementation APCSharingOptionsViewController +- (void)dealloc { + _tableView.delegate = nil; + _tableView.dataSource = nil; +} + - (void)viewDidLoad { [super viewDidLoad]; diff --git a/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCWithdrawSurveyViewController.m b/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCWithdrawSurveyViewController.m index 29c2c25c..b3457a27 100644 --- a/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCWithdrawSurveyViewController.m +++ b/APCAppCore/APCAppCore/UI/TabBarControllers/Profile/APCWithdrawSurveyViewController.m @@ -48,6 +48,11 @@ @interface APCWithdrawSurveyViewController () @implementation APCIntroductionViewController +- (void)dealloc { + _textScroller.delegate = nil; + _imageScroller.delegate = nil; +} + #pragma mark - Initialise Scroll View With Images - (void)initialiseImageScrollView diff --git a/APCAppCore/APCAppCore/UI/Views/APCPasscodeView.m b/APCAppCore/APCAppCore/UI/Views/APCPasscodeView.m index 65e46c89..c1c73b53 100644 --- a/APCAppCore/APCAppCore/UI/Views/APCPasscodeView.m +++ b/APCAppCore/APCAppCore/UI/Views/APCPasscodeView.m @@ -60,6 +60,10 @@ - (instancetype) initWithFrame:(CGRect)frame { return self; } +- (void)dealloc { + _hiddenTextField.delegate = nil; +} + - (void) addControls { _digitViews = [NSMutableArray new];