[kaffe] CVS kaffe (robilad): Resynced with GNU Classpath: don't catch ThreadDeath

Kaffe CVS cvs-commits at kaffe.org
Sat Dec 4 04:18:55 PST 2004


PatchSet 5537 
Date: 2004/12/04 12:13:54
Author: robilad
Branch: HEAD
Tag: (none) 
Log:
Resynced with GNU Classpath: don't catch ThreadDeath

2004-12-03  Dalibor Topic  <robilad at kaffe.org>

* libraries/javalib/java/awt/EventDispatchThread.java,
libraries/javalib/java/awt/Toolkit.java,
libraries/javalib/java/io/ObjectStreamClass.java,
libraries/javalib/java/lang/reflect/Proxy.java,
libraries/javalib/java/net/URL.java,
libraries/javalib/java/security/SecureRandom.java,
libraries/javalib/java/util/Timer.java,
libraries/javalib/java/util/prefs/AbstractPreferences.java:
Resynced with GNU Classpath.

2004-12-02  Jeroen Frijters  <jeroen at frijters.net>

* java/awt/EventDispatchThread.java,
java/awt/Toolkit.java,
java/io/ObjectStreamClass.java,
java/lang/reflect/Proxy.java,
java/net/URL.java,
java/security/SecureRandom.java,
java/util/Timer.java,
java/util/prefs/AbstractPreferences.java,
vm/reference/java/lang/VMProcess.java:
Don't catch java.lang.ThreadDeath.

Members: 
	ChangeLog:1.3083->1.3084 
	libraries/javalib/java/awt/EventDispatchThread.java:1.12->1.13 
	libraries/javalib/java/awt/Toolkit.java:1.21->1.22 
	libraries/javalib/java/io/ObjectStreamClass.java:1.27->1.28 
	libraries/javalib/java/lang/reflect/Proxy.java:1.5->1.6 
	libraries/javalib/java/net/URL.java:1.50->1.51 
	libraries/javalib/java/security/SecureRandom.java:1.7->1.8 
	libraries/javalib/java/util/Timer.java:1.8->1.9 
	libraries/javalib/java/util/prefs/AbstractPreferences.java:1.7->1.8 

Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.3083 kaffe/ChangeLog:1.3084
--- kaffe/ChangeLog:1.3083	Sat Dec  4 03:00:51 2004
+++ kaffe/ChangeLog	Sat Dec  4 12:13:54 2004
@@ -1,5 +1,30 @@
 2004-12-03  Dalibor Topic  <robilad at kaffe.org>
 
+	* libraries/javalib/java/awt/EventDispatchThread.java,
+	libraries/javalib/java/awt/Toolkit.java,
+	libraries/javalib/java/io/ObjectStreamClass.java,
+	libraries/javalib/java/lang/reflect/Proxy.java,
+	libraries/javalib/java/net/URL.java,
+	libraries/javalib/java/security/SecureRandom.java,
+	libraries/javalib/java/util/Timer.java,
+	libraries/javalib/java/util/prefs/AbstractPreferences.java:
+	Resynced with GNU Classpath.
+
+	2004-12-02  Jeroen Frijters  <jeroen at frijters.net>
+
+	* java/awt/EventDispatchThread.java,
+	java/awt/Toolkit.java,
+	java/io/ObjectStreamClass.java,
+	java/lang/reflect/Proxy.java,
+	java/net/URL.java,
+	java/security/SecureRandom.java,
+	java/util/Timer.java,
+	java/util/prefs/AbstractPreferences.java,
+	vm/reference/java/lang/VMProcess.java:
+	Don't catch java.lang.ThreadDeath.
+
+2004-12-03  Dalibor Topic  <robilad at kaffe.org>
+
 	* libraries/javalib/gnu/java/net/protocol/file/Connection.java:
         Resynced with GNU Classpath.
 
Index: kaffe/libraries/javalib/java/awt/EventDispatchThread.java
diff -u kaffe/libraries/javalib/java/awt/EventDispatchThread.java:1.12 kaffe/libraries/javalib/java/awt/EventDispatchThread.java:1.13
--- kaffe/libraries/javalib/java/awt/EventDispatchThread.java:1.12	Tue Oct 12 00:24:58 2004
+++ kaffe/libraries/javalib/java/awt/EventDispatchThread.java	Sat Dec  4 12:13:58 2004
@@ -80,6 +80,11 @@
           if (!manager.dispatchEvent (evt))
             queue.dispatchEvent(evt);
 	}
+        catch (ThreadDeath death)
+        {
+          // If someone wants to kill us, let them.
+          return;
+        }
 	catch (InterruptedException ie)
 	{
 	  // We are interrupted when we should finish executing
Index: kaffe/libraries/javalib/java/awt/Toolkit.java
diff -u kaffe/libraries/javalib/java/awt/Toolkit.java:1.21 kaffe/libraries/javalib/java/awt/Toolkit.java:1.22
--- kaffe/libraries/javalib/java/awt/Toolkit.java:1.21	Wed Nov 24 21:49:19 2004
+++ kaffe/libraries/javalib/java/awt/Toolkit.java	Sat Dec  4 12:13:58 2004
@@ -526,6 +526,10 @@
         toolkit = (Toolkit) obj;
         return toolkit;
       }
+    catch (ThreadDeath death)
+      {
+        throw death;
+      }
     catch (Throwable t)
       {
 	AWTError e = new AWTError("Cannot load AWT toolkit: " + toolkit_name);
Index: kaffe/libraries/javalib/java/io/ObjectStreamClass.java
diff -u kaffe/libraries/javalib/java/io/ObjectStreamClass.java:1.27 kaffe/libraries/javalib/java/io/ObjectStreamClass.java:1.28
--- kaffe/libraries/javalib/java/io/ObjectStreamClass.java:1.27	Fri Dec  3 18:05:50 2004
+++ kaffe/libraries/javalib/java/io/ObjectStreamClass.java	Sat Dec  4 12:13:58 2004
@@ -850,11 +850,11 @@
     {
 	return (Externalizable)constructor.newInstance(null);
     }
-    catch(Throwable t)
+    catch(Exception x)
     {
 	throw (InvalidClassException)
 	    new InvalidClassException(clazz.getName(),
-		     "Unable to instantiate").initCause(t);
+		     "Unable to instantiate").initCause(x);
     }
   }
 
Index: kaffe/libraries/javalib/java/lang/reflect/Proxy.java
diff -u kaffe/libraries/javalib/java/lang/reflect/Proxy.java:1.5 kaffe/libraries/javalib/java/lang/reflect/Proxy.java:1.6
--- kaffe/libraries/javalib/java/lang/reflect/Proxy.java:1.5	Tue May 18 01:10:28 2004
+++ kaffe/libraries/javalib/java/lang/reflect/Proxy.java	Sat Dec  4 12:13:59 2004
@@ -1357,7 +1357,7 @@
 
           return clazz;
         }
-      catch (Throwable e)
+      catch (Exception e)
         {
           // assert false;
           throw (Error) new InternalError("Unexpected: " + e).initCause(e);
Index: kaffe/libraries/javalib/java/net/URL.java
diff -u kaffe/libraries/javalib/java/net/URL.java:1.50 kaffe/libraries/javalib/java/net/URL.java:1.51
--- kaffe/libraries/javalib/java/net/URL.java:1.50	Fri Nov 26 20:50:43 2004
+++ kaffe/libraries/javalib/java/net/URL.java	Sat Dec  4 12:13:59 2004
@@ -901,6 +901,10 @@
 		Class c = Class.forName(clsName, true, systemClassLoader);
 		ph = (URLStreamHandler) c.newInstance();
 	      }
+            catch (ThreadDeath death)
+              {
+                throw death;
+              }
 	    catch (Throwable t) { /* ignored */ }
 	  }
 	 while (ph == null && pkgPrefix.hasMoreTokens());
Index: kaffe/libraries/javalib/java/security/SecureRandom.java
diff -u kaffe/libraries/javalib/java/security/SecureRandom.java:1.7 kaffe/libraries/javalib/java/security/SecureRandom.java:1.8
--- kaffe/libraries/javalib/java/security/SecureRandom.java:1.7	Sat Oct 23 10:07:18 2004
+++ kaffe/libraries/javalib/java/security/SecureRandom.java	Sat Dec  4 12:14:00 2004
@@ -112,6 +112,10 @@
                         provider = p[i];
                         return;
                       }
+                    catch (ThreadDeath death)
+                      {
+                        throw death;
+                      }
                     catch (Throwable t)
 		      {
 			// Ignore.
Index: kaffe/libraries/javalib/java/util/Timer.java
diff -u kaffe/libraries/javalib/java/util/Timer.java:1.8 kaffe/libraries/javalib/java/util/Timer.java:1.9
--- kaffe/libraries/javalib/java/util/Timer.java:1.8	Fri Nov 26 18:32:46 2004
+++ kaffe/libraries/javalib/java/util/Timer.java	Sat Dec  4 12:14:00 2004
@@ -343,6 +343,10 @@
 		{
 		  task.run();
 		}
+              catch (ThreadDeath death)
+                {
+                  throw death;
+                }
 	      catch (Throwable t)
 		{		
 		  /* ignore all errors */
Index: kaffe/libraries/javalib/java/util/prefs/AbstractPreferences.java
diff -u kaffe/libraries/javalib/java/util/prefs/AbstractPreferences.java:1.7 kaffe/libraries/javalib/java/util/prefs/AbstractPreferences.java:1.8
--- kaffe/libraries/javalib/java/util/prefs/AbstractPreferences.java:1.7	Sun Oct 24 17:20:11 2004
+++ kaffe/libraries/javalib/java/util/prefs/AbstractPreferences.java	Sat Dec  4 12:14:01 2004
@@ -550,6 +550,8 @@
             String value;
             try {
                 value = getSpi(key);
+            } catch (ThreadDeath death) {
+                throw death;
             } catch (Throwable t) {
                 value = null;
             }




More information about the kaffe mailing list