From 17f2155aa4f41b3c16c30aa1c0ca4e898ee50904 Mon Sep 17 00:00:00 2001 From: michael starke Date: Wed, 26 Jun 2013 03:50:23 +0200 Subject: [PATCH] Fixed memory leaks Removed obsolete CreationViewController references --- MacPass/MPAppDelegate.m | 1 + MacPass/MPDocument.h | 2 +- MacPass/MPDocument.m | 7 +++++++ MacPass/MPDocumentWindowController.h | 3 +-- MacPass/MPDocumentWindowController.m | 3 +-- MacPass/MPEntryViewController.h | 4 ++-- MacPass/MPEntryViewController.m | 13 +++++++------ MacPass/MPInspectorViewController.m | 1 + MacPass/MPOutlineViewController.m | 7 +++++++ MacPass/MPPasswordCreatorViewController.m | 6 ++++++ MacPass/MPSettingsWindowController.m | 1 + MacPass/MPToolbarDelegate.m | 8 +++++--- MacPass/MacPass-Info.plist | 2 +- 13 files changed, 41 insertions(+), 17 deletions(-) diff --git a/MacPass/MPAppDelegate.m b/MacPass/MPAppDelegate.m index 440daad0..4757bde9 100644 --- a/MacPass/MPAppDelegate.m +++ b/MacPass/MPAppDelegate.m @@ -50,6 +50,7 @@ - (void)dealloc { [_settingsController release]; [_passwordCreatorController release]; + [_passwordCreatorWindow release]; [serverDaemon release]; [lockDaemon release]; [super dealloc]; diff --git a/MacPass/MPDocument.h b/MacPass/MPDocument.h index 0d458983..6a2cc424 100644 --- a/MacPass/MPDocument.h +++ b/MacPass/MPDocument.h @@ -36,7 +36,7 @@ APPKIT_EXTERN NSString *const MPDocumentGroupKey; @property (assign, readonly, getter = isDecrypted) BOOL decrypted; @property (retain, readonly) KdbTree *tree; @property (assign, readonly, nonatomic) KdbGroup *root; -@property (nonatomic,retain) NSString *password; +@property (nonatomic, retain) NSString *password; @property (nonatomic, retain) NSURL *key; @property (assign, readonly) MPDatabaseVersion version; diff --git a/MacPass/MPDocument.m b/MacPass/MPDocument.m index 8882f8b8..15bc6358 100644 --- a/MacPass/MPDocument.m +++ b/MacPass/MPDocument.m @@ -70,6 +70,13 @@ NSString *const MPDocumentGroupKey = @"MPDocumentGroupKey"; return self; } +- (void)dealloc { + [_tree release]; + [_password release]; + [_key release]; + [super dealloc]; +} + - (void)makeWindowControllers { MPDocumentWindowController *windowController = [[MPDocumentWindowController alloc] init]; [self addWindowController:windowController]; diff --git a/MacPass/MPDocumentWindowController.h b/MacPass/MPDocumentWindowController.h index 7a59c61d..fbcdc809 100644 --- a/MacPass/MPDocumentWindowController.h +++ b/MacPass/MPDocumentWindowController.h @@ -14,7 +14,6 @@ @class MPPasswordEditViewController; @class MPPasswordInputController; @class MPOutlineViewController; -@class MPCreationViewController; @class KdbGroup; @class KdbEntry; @@ -28,7 +27,7 @@ APPKIT_EXTERN NSString *const MPCurrentItemChangedNotification; @property (readonly, retain) MPEntryViewController *entryViewController; @property (readonly, retain) MPOutlineViewController *outlineViewController; @property (readonly, retain) MPInspectorViewController *inspectorViewController; -@property (readonly, retain) MPCreationViewController *creationViewController; + /* Holds the current item. That is either a KdbGroup or a KdbEntry */ @property (readonly, assign) id currentItem; diff --git a/MacPass/MPDocumentWindowController.m b/MacPass/MPDocumentWindowController.m index 26aa9f36..11b7c5cb 100644 --- a/MacPass/MPDocumentWindowController.m +++ b/MacPass/MPDocumentWindowController.m @@ -39,7 +39,6 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur @property (retain) MPToolbarDelegate *toolbarDelegate; - @end @implementation MPDocumentWindowController @@ -67,10 +66,10 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur [_toolbar release]; [_passwordInputController release]; + [_passwordEditController release]; [_entryViewController release]; [_outlineViewController release]; [_inspectorViewController release]; - [_creationViewController release]; [_toolbarDelegate release]; [_splitView release]; diff --git a/MacPass/MPEntryViewController.h b/MacPass/MPEntryViewController.h index 864de4e4..612934bf 100644 --- a/MacPass/MPEntryViewController.h +++ b/MacPass/MPEntryViewController.h @@ -17,12 +17,12 @@ APPKIT_EXTERN NSString *const MPEntryTableURLColumnIdentifier; APPKIT_EXTERN NSString *const MPDidChangeSelectedEntryNotification; /* Tags to determine what to copy */ -typedef enum { +typedef NS_ENUM( NSUInteger, MPCopyContentTypeTag) { MPCopyUsername, MPCopyPassword, MPCopyURL, MPCopyWholeEntry, -} MPCopyContentTypeTag; +}; @class KdbGroup; @class KdbEntry; diff --git a/MacPass/MPEntryViewController.m b/MacPass/MPEntryViewController.m index 5c9ece06..43a231a3 100644 --- a/MacPass/MPEntryViewController.m +++ b/MacPass/MPEntryViewController.m @@ -111,12 +111,13 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername"; - (void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self]; - self.entryArrayController = nil; - self.filteredEntries = nil; - self.filterBar = nil; - self.tableToTop = nil; - self.filterButtonToMode = nil; - self.dataSource = nil; + [_entryArrayController release]; + [_filteredEntries release]; + [_filter release]; + [_filterBar release]; + [_tableToTop release]; + [_dataSource release]; + [_filterButtonToMode release]; [super dealloc]; } diff --git a/MacPass/MPInspectorViewController.m b/MacPass/MPInspectorViewController.m index 2f5a3401..553af7ee 100644 --- a/MacPass/MPInspectorViewController.m +++ b/MacPass/MPInspectorViewController.m @@ -69,6 +69,7 @@ enum { - (void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self]; [_activePopover release]; + [_attachmentsController release]; [super dealloc]; } diff --git a/MacPass/MPOutlineViewController.m b/MacPass/MPOutlineViewController.m index 8d145067..16dce1f6 100644 --- a/MacPass/MPOutlineViewController.m +++ b/MacPass/MPOutlineViewController.m @@ -56,6 +56,13 @@ NSString *const _MPOutlinveViewHeaderViewIdentifier = @"HeaderCell"; return self; } +- (void)dealloc { + [_treeController release]; + [_datasource release]; + [_menu release]; + [super dealloc]; +} + - (void)didLoadView { [_outlineView setDelegate:self]; [_outlineView setMenu:[self _contextMenu]]; diff --git a/MacPass/MPPasswordCreatorViewController.m b/MacPass/MPPasswordCreatorViewController.m index 38c466d5..4044d536 100644 --- a/MacPass/MPPasswordCreatorViewController.m +++ b/MacPass/MPPasswordCreatorViewController.m @@ -54,6 +54,12 @@ return self; } +- (void)dealloc { + [_generatedPassword release]; + [_password release]; + [super dealloc]; +} + - (void)didLoadView { [self.passwordLengthSlider setMinValue:MIN_PASSWORD_LENGTH]; [self.passwordLengthSlider setMaxValue:MAX_PASSWORD_LENGTH]; diff --git a/MacPass/MPSettingsWindowController.m b/MacPass/MPSettingsWindowController.m index 615e03d0..7f1a6838 100644 --- a/MacPass/MPSettingsWindowController.m +++ b/MacPass/MPSettingsWindowController.m @@ -45,6 +45,7 @@ [_settingsController release]; [_toolbar release]; [_toolbarItems release]; + [_defaultToolbarItems release]; [super dealloc]; } diff --git a/MacPass/MPToolbarDelegate.m b/MacPass/MPToolbarDelegate.m index ff4f5866..ac45c5e5 100644 --- a/MacPass/MPToolbarDelegate.m +++ b/MacPass/MPToolbarDelegate.m @@ -48,9 +48,9 @@ NSString *const MPToolbarItemInspector = @"TOOLBAR_INSPECTOR"; - (void)dealloc { - self.toolbarIdentifiers = nil; - self.toolbarImages = nil; - self.toolbarItems = nil; + [_toolbarItems release]; + [_toolbarIdentifiers release]; + [_toolbarImages release]; [super dealloc]; } @@ -88,6 +88,7 @@ NSString *const MPToolbarItemInspector = @"TOOLBAR_INSPECTOR"; [popupButton setFrame:newFrame]; [popupButton setMenu:menu]; [item setMenuFormRepresentation:menuRepresentation]; + [menuRepresentation release]; [item setView:popupButton]; [popupButton release]; [menu release]; @@ -113,6 +114,7 @@ NSString *const MPToolbarItemInspector = @"TOOLBAR_INSPECTOR"; action:[self _actionForToolbarItemIdentifier:itemIdentifier] keyEquivalent:@""]; [item setMenuFormRepresentation:menuRepresentation]; + [menuRepresentation release]; [button release]; } self.toolbarItems[itemIdentifier] = item; diff --git a/MacPass/MacPass-Info.plist b/MacPass/MacPass-Info.plist index 484c468c..b8f8cbdc 100644 --- a/MacPass/MacPass-Info.plist +++ b/MacPass/MacPass-Info.plist @@ -48,7 +48,7 @@ CFBundleSignature ???? CFBundleVersion - 1167 + 1175 LSMinimumSystemVersion ${MACOSX_DEPLOYMENT_TARGET} NSHumanReadableCopyright