From: Michael J. Rubinsky Date: Mon, 2 Feb 2009 23:46:03 +0000 (-0500) Subject: Check if we are deleting the currently selected server - if so, make X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=5405490ed4a90734c98f5d2cecc9b2e923fd72aa;p=horde.git Check if we are deleting the currently selected server - if so, make sure we call disconnect before returning. --- diff --git a/iPhoto2Ansel/AnselExportController.m b/iPhoto2Ansel/AnselExportController.m index cc618e679..fc7bc2036 100644 --- a/iPhoto2Ansel/AnselExportController.m +++ b/iPhoto2Ansel/AnselExportController.m @@ -111,17 +111,20 @@ NSString * const TURAnselServerPasswordKey = @"password"; } // Remove the selected server from the saved list. -// TODO: Sanity checks - make sure we don't delete the current server, -// or disconnect first etc... - (IBAction)removeServer: (id)sender { + NSTableColumn *theCol = [serverTable tableColumnWithIdentifier:@"nickname"]; + + // We are deleting the entry for the currently selected server - make sure + // we disconnect. + if ([currentServer objectForKey:TURAnselServerNickKey] == [[theCol dataCell] stringValue]) { + [self disconnect]; + } NSUserDefaults *userPrefs = [NSUserDefaults standardUserDefaults]; [anselServers removeObjectAtIndex: [serverTable selectedRow]]; [userPrefs setObject:anselServers forKey:TURAnselServersKey]; [userPrefs synchronize]; - NSLog(@"Attempting to reload"); [serverTable reloadData]; - NSLog(@"Reloaded"); [self updateServersPopupMenu]; } @@ -131,11 +134,6 @@ NSString * const TURAnselServerPasswordKey = @"password"; if ([mServersPopUp indexOfSelectedItem] == [mServersPopUp numberOfItems] - 1) { // Server list [self showServerListPanel]; - - // Disconnect from the current server. - // TODO: See which server we deleted and only disconnect if that was the - // one we removed. - [self disconnect]; } else if ([mServersPopUp indexOfSelectedItem] == [mServersPopUp numberOfItems] - 2) { // New Server [self showNewServerSheet];