diff options
author | Fernando Nasser <fnasser@redhat.com> | 2004-01-16 16:15:49 +0000 |
---|---|---|
committer | Fernando Nasser <fnasser@gcc.gnu.org> | 2004-01-16 16:15:49 +0000 |
commit | 101900aa2885d08ceff3035eb1ece524222f573f (patch) | |
tree | 23d41a020b7d3f81a3015111bd82e8f4e329bb48 /libjava/java/awt/EventDispatchThread.java | |
parent | 5ed5fd905c6fd33256c0a64f5913d4064bc5eccd (diff) | |
download | gcc-101900aa2885d08ceff3035eb1ece524222f573f.zip gcc-101900aa2885d08ceff3035eb1ece524222f573f.tar.gz gcc-101900aa2885d08ceff3035eb1ece524222f573f.tar.bz2 |
EventDispatchThread.java (run): Stop running when interrupted.
* java/awt/EventDispatchThread.java (run): Stop running when
interrupted.
* java/awt/EventQueue.java (pop): Stop dispatch thread when done.
Reset the queue after transferring its contents.
(push): Start a new dispatch thread if none is running.
From-SVN: r75977
Diffstat (limited to 'libjava/java/awt/EventDispatchThread.java')
-rw-r--r-- | libjava/java/awt/EventDispatchThread.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libjava/java/awt/EventDispatchThread.java b/libjava/java/awt/EventDispatchThread.java index 6e0e875..91145e1 100644 --- a/libjava/java/awt/EventDispatchThread.java +++ b/libjava/java/awt/EventDispatchThread.java @@ -62,8 +62,18 @@ class EventDispatchThread extends Thread try { AWTEvent evt = queue.getNextEvent(); + if (isInterrupted ()) + { + // We are interrupted when we should finish executing + return; + } queue.dispatchEvent(evt); } + catch (InterruptedException ie) + { + // We are interrupted when we should finish executing + return; + } catch (Throwable x) { System.err.println("Exception during event dispatch:"); |