]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
STABLE12-cellconfig-unlock-mutex-on-error-20030422
authorDerrick Brashear <shadow@dementia.org>
Thu, 15 May 2003 16:52:25 +0000 (16:52 +0000)
committerDerrick Brashear <shadow@dementia.org>
Thu, 15 May 2003 16:52:25 +0000 (16:52 +0000)
clean up my own mess (i bet).
certain error cases weren't being cleaned up properly before we returned

(cherry picked from commit 5cebfdc757655ba0762b3edd5d9dbdd3dc5f25dd)

src/auth/cellconfig.c

index 5b2c5fb9ce4c35e6157ecb7bca24a38acd5773bd..3633b64338aad378015c91bde9dea25d4192f762 100644 (file)
@@ -785,7 +785,7 @@ int afsconf_GetAfsdbInfo(acellName, aservice, acellInfo)
     if (aservice) {
         LOCK_GLOBAL_MUTEX
         tservice = afsconf_FindService(aservice);
-     UNLOCK_GLOBAL_MUTEX
+       UNLOCK_GLOBAL_MUTEX
         if (tservice < 0) {
             return AFSCONF_NOTFOUND;  /* service not found */
      }
@@ -1023,8 +1023,10 @@ struct afsconf_keys *astr;
 
     LOCK_GLOBAL_MUTEX
     code = afsconf_Check(adir);
-    if (code)
+    if (code) {
+        UNLOCK_GLOBAL_MUTEX
        return AFSCONF_FAILURE;
+    }
     memcpy(astr, adir->keystr, sizeof(struct afsconf_keys));
     UNLOCK_GLOBAL_MUTEX
     return 0;
@@ -1045,8 +1047,10 @@ afs_int32 afsconf_GetLatestKey(adir, avno, akey)
     
     LOCK_GLOBAL_MUTEX
     code = afsconf_Check(adir);
-    if (code)
+    if (code) {
+        UNLOCK_GLOBAL_MUTEX
        return AFSCONF_FAILURE;
+    }
     maxa = adir->keystr->nkeys;
 
     best = -1;     /* highest kvno we've seen yet */
@@ -1080,8 +1084,10 @@ char *akey;
 
     LOCK_GLOBAL_MUTEX
     code = afsconf_Check(adir);
-    if (code)
+    if (code) {
+        UNLOCK_GLOBAL_MUTEX
        return AFSCONF_FAILURE;
+    }
     maxa = adir->keystr->nkeys;
 
     for(tk = adir->keystr->key,i=0;i<maxa;i++,tk++) {