changeset 1897:4ed8bce48963

6887249: Get rid of double-check for isValid() idiom in validate() methods Reviewed-by: art, dcherepanov
author anthony
date Fri, 23 Oct 2009 14:52:55 +0400
parents a773e88249a3
children 50321e4d46eb
files src/share/classes/java/awt/Container.java
diffstat 1 files changed, 22 insertions(+), 25 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/classes/java/awt/Container.java	Thu Oct 22 13:27:28 2009 +0400
+++ b/src/share/classes/java/awt/Container.java	Fri Oct 23 14:52:55 2009 +0400
@@ -1583,34 +1583,31 @@
      * @see #validateTree
      */
     public void validate() {
-        /* Avoid grabbing lock unless really necessary. */
-        if (!isValid() || descendUnconditionallyWhenValidating) {
-            boolean updateCur = false;
-            synchronized (getTreeLock()) {
-                if ((!isValid() || descendUnconditionallyWhenValidating)
-                        && peer != null)
-                {
-                    ContainerPeer p = null;
-                    if (peer instanceof ContainerPeer) {
-                        p = (ContainerPeer) peer;
-                    }
-                    if (p != null) {
-                        p.beginValidate();
-                    }
-                    validateTree();
-                    if (p != null) {
-                        p.endValidate();
-                        // Avoid updating cursor if this is an internal call.
-                        // See validateUnconditionally() for details.
-                        if (!descendUnconditionallyWhenValidating) {
-                            updateCur = isVisible();
-                        }
+        boolean updateCur = false;
+        synchronized (getTreeLock()) {
+            if ((!isValid() || descendUnconditionallyWhenValidating)
+                    && peer != null)
+            {
+                ContainerPeer p = null;
+                if (peer instanceof ContainerPeer) {
+                    p = (ContainerPeer) peer;
+                }
+                if (p != null) {
+                    p.beginValidate();
+                }
+                validateTree();
+                if (p != null) {
+                    p.endValidate();
+                    // Avoid updating cursor if this is an internal call.
+                    // See validateUnconditionally() for details.
+                    if (!descendUnconditionallyWhenValidating) {
+                        updateCur = isVisible();
                     }
                 }
             }
-            if (updateCur) {
-                updateCursorImmediately();
-            }
+        }
+        if (updateCur) {
+            updateCursorImmediately();
         }
     }