Revision: 27958
          http://sourceforge.net/p/bibdesk/svn/27958
Author:   hofman
Date:     2022-09-29 14:58:40 +0000 (Thu, 29 Sep 2022)
Log Message:
-----------
always try to get password

Modified Paths:
--------------
    trunk/bibdesk/BDSKServerInfo.m

Modified: trunk/bibdesk/BDSKServerInfo.m
===================================================================
--- trunk/bibdesk/BDSKServerInfo.m      2022-09-29 14:32:13 UTC (rev 27957)
+++ trunk/bibdesk/BDSKServerInfo.m      2022-09-29 14:58:40 UTC (rev 27958)
@@ -278,33 +278,32 @@
     return BDSKServerTypeEntrez;
 }
 
-- (BOOL)getUsername:(NSString **)usernamePtr password:(NSString **)passwordPtr 
{
+- (BOOL)getUsername:(NSString **)outUsername password:(NSString **)outPassword 
{
     if ([self isZoom] == NO && [self isISI] == NO)
         return NO;
     NSString *user = [self username];
     if (user == nil)
         return NO;
-    if (usernamePtr)
-        *usernamePtr = user;
-    if (passwordPtr) {
-        [passwordLock lockForReading];
-        NSString *aPassword = [[password retain] autorelease];
+    [passwordLock lockForReading];
+    NSString *pw = [[password retain] autorelease];
+    [passwordLock unlock];
+    if (pw == nil) {
+        NSString *server = [self isISI] ? ISI_SERVER : [self host];
+        if (server == nil)
+            return NO;
+        pw = [BDSKPasswordController passwordForKeychainServer:server 
port:[[self port] integerValue] account:user];
+        if (pw == nil)
+            return NO;
+        [passwordLock lockForWriting];
+        passwordInKeychain = YES;
+        [password release];
+        password = [pw copy];
         [passwordLock unlock];
-        if (aPassword == nil) {
-            NSString *server = [self isISI] ? ISI_SERVER : [self host];
-            if (server == nil)
-                return NO;
-            aPassword = [BDSKPasswordController 
passwordForKeychainServer:server port:[[self port] integerValue] account:user];
-            if (aPassword == nil)
-                return NO;
-            [passwordLock lockForWriting];
-            passwordInKeychain = YES;
-            [password release];
-            password = [aPassword copy];
-            [passwordLock unlock];
-        }
-        *passwordPtr = aPassword;
     }
+    if (outUsername)
+        *outUsername = user;
+    if (outPassword)
+        *outPassword = pw;
     return YES;
 }
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit

Reply via email to