changeset 5388:fbf98cbd2e6b

7167092: Need to put the return clause in the synchronized block Summary: a regression fix for bug 7153184 Reviewed-by: wetmore
author xuelei
date Tue, 08 May 2012 17:56:18 -0700
parents 1ece20885be4
children 0f63f3390ac9
files src/share/classes/sun/security/ssl/SSLContextImpl.java
diffstat 1 files changed, 11 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/classes/sun/security/ssl/SSLContextImpl.java	Tue May 08 11:16:36 2012 -0700
+++ b/src/share/classes/sun/security/ssl/SSLContextImpl.java	Tue May 08 17:56:18 2012 -0700
@@ -276,39 +276,33 @@
                 supportedCipherSuiteList = getApplicableCipherSuiteList(
                         getSuportedProtocolList(), false);
             }
+
+            return supportedCipherSuiteList;
         }
-
-        return supportedCipherSuiteList;
     }
 
     // Get default CipherSuiteList.
     CipherSuiteList getDefaultCipherSuiteList(boolean roleIsServer) {
-        if (roleIsServer) {
-            // The maintenance of cipher suites needs to be synchronized.
-            synchronized (this) {
-                // Clear cache of available ciphersuites.
-                clearAvailableCache();
+        // The maintenance of cipher suites needs to be synchronized.
+        synchronized (this) {
+            // Clear cache of available ciphersuites.
+            clearAvailableCache();
 
+            if (roleIsServer) {
                 if (defaultServerCipherSuiteList == null) {
                     defaultServerCipherSuiteList = getApplicableCipherSuiteList(
                         getDefaultProtocolList(true), true);
                 }
-            }
 
-            return defaultServerCipherSuiteList;
-        } else {
-            // The maintenance of cipher suites needs to be synchronized
-            synchronized (this) {
-                // Clear cache of available ciphersuites.
-                clearAvailableCache();
-
+                return defaultServerCipherSuiteList;
+            } else {
                 if (defaultClientCipherSuiteList == null) {
                     defaultClientCipherSuiteList = getApplicableCipherSuiteList(
                         getDefaultProtocolList(false), true);
                 }
+
+                return defaultClientCipherSuiteList;
             }
-
-            return defaultClientCipherSuiteList;
         }
     }