changeset 5006:3f4701d08418

7143070: test/java/awt/print/PaintSetEnabledDeadlock/PaintSetEnabledDeadlock.java freezes on exit Reviewed-by: anthony
author bagiras
date Mon, 13 Feb 2012 17:49:23 +0400
parents 081a44952699
children a1dc74291966
files test/java/awt/print/PaintSetEnabledDeadlock/PaintSetEnabledDeadlock.java
diffstat 1 files changed, 12 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/test/java/awt/print/PaintSetEnabledDeadlock/PaintSetEnabledDeadlock.java	Fri Feb 10 10:23:13 2012 -0800
+++ b/test/java/awt/print/PaintSetEnabledDeadlock/PaintSetEnabledDeadlock.java	Mon Feb 13 17:49:23 2012 +0400
@@ -54,9 +54,12 @@
             Util.clickOnComp(frame.button, robot);
         }
 
-        frame.panel.stop();
+        boolean ret = frame.panel.stop();
         frame.dispose();
 
+        if (!ret) {
+            throw new RuntimeException("Test failed!");
+        }
         System.out.println("Test passed.");
     }
 
@@ -140,17 +143,19 @@
         }
     }
 
-    public void stop() {
+    public boolean stop() {
         active = false;
         try {
-            synchronized (sync) {
-                sync.notify();
-            }
-            synchronized (thread) {
-                thread.wait();
+            sync();
+            thread.join(1000);
+            if (thread.isAlive()) {
+                thread.interrupt();
+                return false;
             }
         } catch (InterruptedException ex) {
+            return false;
         }
+        return true;
     }
 
     public void draw() {