aboutsummaryrefslogtreecommitdiff
path: root/libjava/java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java')
-rw-r--r--libjava/java/awt/EventQueue.java5
-rw-r--r--libjava/java/awt/event/InvocationEvent.java7
2 files changed, 8 insertions, 4 deletions
diff --git a/libjava/java/awt/EventQueue.java b/libjava/java/awt/EventQueue.java
index 0a60d69..6ba9cb6 100644
--- a/libjava/java/awt/EventQueue.java
+++ b/libjava/java/awt/EventQueue.java
@@ -153,11 +153,10 @@ public class EventQueue
InvocationEvent ie =
new InvocationEvent(eq, runnable, current, true);
-
- eq.postEvent(ie);
-
+
synchronized (current)
{
+ eq.postEvent(ie);
current.wait();
}
diff --git a/libjava/java/awt/event/InvocationEvent.java b/libjava/java/awt/event/InvocationEvent.java
index 778eb18..6ee6300 100644
--- a/libjava/java/awt/event/InvocationEvent.java
+++ b/libjava/java/awt/event/InvocationEvent.java
@@ -62,7 +62,12 @@ public class InvocationEvent extends AWTEvent implements ActiveEvent
runnable.run ();
if (notifier != null)
- notifier.notifyAll ();
+ {
+ synchronized (notifier)
+ {
+ notifier.notifyAll ();
+ }
+ }
}
public Exception getException ()