KerberosAgent hangs changing pw for passwordless identities
authorJustin Anderson <jander@mit.edu>
Wed, 29 Oct 2008 19:36:06 +0000 (19:36 +0000)
committerJustin Anderson <jander@mit.edu>
Wed, 29 Oct 2008 19:36:06 +0000 (19:36 +0000)
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

src/kim/agent/mac/AuthenticationController.h
src/kim/agent/mac/AuthenticationController.m
src/kim/agent/mac/IPCClient.m

index 3b223f760659f18c97ec85219fd4aab2941551d9..b443d8a7369be1273f773c00f49ee23e47d428ad 100644 (file)
 - (IBAction) cancelTicketOptions: (id) sender;
 - (IBAction) saveTicketOptions: (id) sender;
 
+- (IBAction) cancelAuthSheet: (id) sender;
+
 - (void) authSheetDidEnd: (NSWindow *) sheet 
               returnCode: (int) returnCode 
              contextInfo: (void *) contextInfo;
index de49b11de50a893a5468bb0db13b24c073c900be..07449f87633392722e2de796c4f6b70834e238b5 100644 (file)
     [NSApp endSheet:ticketOptionsSheet];
 }
 
+- (IBAction) cancelAuthSheet: (id) sender
+{
+    [NSApp endSheet:[self window]];
+}
+
 - (void) authSheetDidEnd: (NSWindow *) sheet 
               returnCode: (int) returnCode 
              contextInfo: (void *) contextInfo
index 8b9eb219420e602d7f026e1928324c06c5133ef0..53a7fe54008b5acbf36ba84021b87fcb17629e23 100644 (file)
@@ -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];