diff options
author | Justin Anderson <jander@mit.edu> | 2008-10-29 19:36:06 +0000 |
---|---|---|
committer | Justin Anderson <jander@mit.edu> | 2008-10-29 19:36:06 +0000 |
commit | f3b81bb59566e6ded787f0485968bd9a8ff7d435 (patch) | |
tree | ac7d54523df5735adcf91250244788c18fa33d40 | |
parent | 283fa8f6ab994d681f74abcc27dc5a4bfbf037c9 (diff) | |
download | krb5-f3b81bb59566e6ded787f0485968bd9a8ff7d435.zip krb5-f3b81bb59566e6ded787f0485968bd9a8ff7d435.tar.gz krb5-f3b81bb59566e6ded787f0485968bd9a8ff7d435.tar.bz2 |
KerberosAgent hangs changing pw for passwordless identities
Trying to change the password for an identity which only uses non-password authentication methods left KerberosAgent with a spinning progress indicator. Problem was with auth sheet not being ended.
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20935 dc483132-0cff-0310-8789-dd5450dbe970
-rw-r--r-- | src/kim/agent/mac/AuthenticationController.h | 2 | ||||
-rw-r--r-- | src/kim/agent/mac/AuthenticationController.m | 5 | ||||
-rw-r--r-- | src/kim/agent/mac/IPCClient.m | 4 |
3 files changed, 11 insertions, 0 deletions
diff --git a/src/kim/agent/mac/AuthenticationController.h b/src/kim/agent/mac/AuthenticationController.h index 3b223f7..b443d8a 100644 --- a/src/kim/agent/mac/AuthenticationController.h +++ b/src/kim/agent/mac/AuthenticationController.h @@ -100,6 +100,8 @@ - (IBAction) cancelTicketOptions: (id) sender; - (IBAction) saveTicketOptions: (id) sender; +- (IBAction) cancelAuthSheet: (id) sender; + - (void) authSheetDidEnd: (NSWindow *) sheet returnCode: (int) returnCode contextInfo: (void *) contextInfo; diff --git a/src/kim/agent/mac/AuthenticationController.m b/src/kim/agent/mac/AuthenticationController.m index de49b11..07449f8 100644 --- a/src/kim/agent/mac/AuthenticationController.m +++ b/src/kim/agent/mac/AuthenticationController.m @@ -514,6 +514,11 @@ [NSApp endSheet:ticketOptionsSheet]; } +- (IBAction) cancelAuthSheet: (id) sender +{ + [NSApp endSheet:[self window]]; +} + - (void) authSheetDidEnd: (NSWindow *) sheet returnCode: (int) returnCode contextInfo: (void *) contextInfo diff --git a/src/kim/agent/mac/IPCClient.m b/src/kim/agent/mac/IPCClient.m index 8b9eb21..53a7fe5 100644 --- a/src/kim/agent/mac/IPCClient.m +++ b/src/kim/agent/mac/IPCClient.m @@ -144,6 +144,10 @@ enum krb_agent_client_state { [self.currentInfo addEntriesFromDictionary:info]; self.state = ipc_client_state_select; + if ([[self.authController window] isVisible]) { + [self.authController cancelAuthSheet:nil]; + } + [self.selectController setContent:self.currentInfo]; [self.selectController showWindow:nil]; |