aboutsummaryrefslogtreecommitdiffstats
path: root/Source/SPConnectionController.m
diff options
context:
space:
mode:
authorrowanbeentje <rowan@beent.je>2010-03-31 23:35:06 +0000
committerrowanbeentje <rowan@beent.je>2010-03-31 23:35:06 +0000
commit06e417594cd0fcdede2f0713c63a861bc65d7e99 (patch)
treede21be7bf852ec3a03c9baf2535ce4cebb5d0cdd /Source/SPConnectionController.m
parent836b96f7e1481938c0267448b940b5d8e202eb09 (diff)
downloadsequelpro-06e417594cd0fcdede2f0713c63a861bc65d7e99.tar.gz
sequelpro-06e417594cd0fcdede2f0713c63a861bc65d7e99.tar.bz2
sequelpro-06e417594cd0fcdede2f0713c63a861bc65d7e99.zip
- Improve SPSSHTunnel question/password dialogs to no longer eat 100% CPU by switching from NSCondition blocking to NSLock blocking
- Improve behaviour of SSH tunnels with no password in keychain - prompt appropriately - Set MXPConnection to check the proxy state when attempting to reconnect a dropped connection, extending the timer when an auth UI is up. This prevents a multiple-dialogs misbehaviour (or sometimes deadlock), addressing the last part of http://log.sequelpro.com/view/86 .
Diffstat (limited to 'Source/SPConnectionController.m')
-rw-r--r--Source/SPConnectionController.m2
1 files changed, 2 insertions, 0 deletions
diff --git a/Source/SPConnectionController.m b/Source/SPConnectionController.m
index 0281896f..ecfd6bc4 100644
--- a/Source/SPConnectionController.m
+++ b/Source/SPConnectionController.m
@@ -706,6 +706,7 @@
connectionKeychainItemAccount = [[keychain accountForUser:[self valueForKeyPath:@"selectedFavorite.user"] host:(([self type] == SPSocketConnection)?@"localhost":[self valueForKeyPath:@"selectedFavorite.host"]) database:[self valueForKeyPath:@"selectedFavorite.database"]] retain];
[self setPassword:[keychain getPasswordForName:connectionKeychainItemName account:connectionKeychainItemAccount]];
if (![[self password] length]) {
+ [self setPassword:nil];
[connectionKeychainItemName release], connectionKeychainItemName = nil;
[connectionKeychainItemAccount release], connectionKeychainItemAccount = nil;
}
@@ -715,6 +716,7 @@
connectionSSHKeychainItemAccount = [[keychain accountForSSHUser:[self valueForKeyPath:@"selectedFavorite.sshUser"] sshHost:[self valueForKeyPath:@"selectedFavorite.sshHost"]] retain];
[self setSshPassword:[keychain getPasswordForName:connectionSSHKeychainItemName account:connectionSSHKeychainItemAccount]];
if (![[self sshPassword] length]) {
+ [self setSshPassword:nil];
[connectionSSHKeychainItemName release], connectionSSHKeychainItemName = nil;
[connectionSSHKeychainItemAccount release], connectionSSHKeychainItemAccount = nil;
}