From 7fbb9fa3f811c635565b1e7714c73e68308447c5 Mon Sep 17 00:00:00 2001 From: mkoch Date: Tue, 22 Feb 2005 21:11:29 +0000 Subject: 2005-02-22 Jeroen Frijters * java/lang/reflect/Proxy.java, java/net/URL.java, java/security/SecureRandom.java, java/util/Timer.java, java/util/prefs/AbstractPreferences.java: Don't catch java.lang.ThreadDeath. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95415 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/java/util/Timer.java | 6 ++++++ libjava/java/util/prefs/AbstractPreferences.java | 2 ++ 2 files changed, 8 insertions(+) (limited to 'libjava/java/util') diff --git a/libjava/java/util/Timer.java b/libjava/java/util/Timer.java index e4eb246a1db..3c7223b2782 100644 --- a/libjava/java/util/Timer.java +++ b/libjava/java/util/Timer.java @@ -343,6 +343,12 @@ public class Timer { task.run(); } + catch (ThreadDeath death) + { + // If an exception escapes, the Timer becomes invalid. + queue.stop(); + throw death; + } catch (Throwable t) { /* ignore all errors */ diff --git a/libjava/java/util/prefs/AbstractPreferences.java b/libjava/java/util/prefs/AbstractPreferences.java index 69f4426e6d3..159a887c831 100644 --- a/libjava/java/util/prefs/AbstractPreferences.java +++ b/libjava/java/util/prefs/AbstractPreferences.java @@ -550,6 +550,8 @@ public abstract class AbstractPreferences extends Preferences { String value; try { value = getSpi(key); + } catch (ThreadDeath death) { + throw death; } catch (Throwable t) { value = null; } -- cgit v1.2.3