re PR libgcj/17784 (Thread.interrupt doesn't do security checks)
2005-01-13 Michael Koch <konqueror@gmx.de> PR libgcj/17784 * java/lang/Thread.java (Thread): Call checkAccess(). (stop): Fixed argument name to match javadoc. * java/lang/natThread.cc (interrupt): Call checkAccess(). (stop): Likewise. From-SVN: r93611
This commit is contained in:
parent
43a5ef693f
commit
e70324625f
@ -1,3 +1,13 @@
|
||||
2005-01-13 Michael Koch <konqueror@gmx.de>
|
||||
|
||||
PR libgcj/17784
|
||||
* java/lang/Thread.java
|
||||
(Thread): Call checkAccess().
|
||||
(stop): Fixed argument name to match javadoc.
|
||||
* java/lang/natThread.cc
|
||||
(interrupt): Call checkAccess().
|
||||
(stop): Likewise.
|
||||
|
||||
2005-01-11 Michael Koch <konqueror@gmx.de>
|
||||
|
||||
PR libgcj/13972
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Thread -- an independent thread of executable code
|
||||
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
|
||||
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
|
||||
Free Software Foundation
|
||||
|
||||
This file is part of GNU Classpath.
|
||||
@ -36,6 +36,7 @@ this exception to your version of the library, but you are not
|
||||
obligated to do so. If you do not wish to do so, delete this
|
||||
exception statement from your version. */
|
||||
|
||||
|
||||
package java.lang;
|
||||
|
||||
import gnu.gcj.RawData;
|
||||
@ -321,6 +322,9 @@ public class Thread implements Runnable
|
||||
|
||||
private Thread (Thread current, ThreadGroup g, Runnable r, String n)
|
||||
{
|
||||
// Make sure the current thread may create a new thread.
|
||||
checkAccess();
|
||||
|
||||
// The Class Libraries book says ``threadName cannot be null''. I
|
||||
// take this to mean NullPointerException.
|
||||
if (n == null)
|
||||
@ -862,7 +866,7 @@ public class Thread implements Runnable
|
||||
* @see SecurityManager#checkPermission(Permission)
|
||||
* @deprecated unsafe operation, try not to use
|
||||
*/
|
||||
public final native void stop(Throwable e);
|
||||
public final native void stop(Throwable t);
|
||||
|
||||
/**
|
||||
* Suspend this Thread. It will not come back, ever, unless it is resumed.
|
||||
|
@ -112,6 +112,7 @@ java::lang::Thread::holdsLock (jobject obj)
|
||||
void
|
||||
java::lang::Thread::interrupt (void)
|
||||
{
|
||||
checkAccess ();
|
||||
natThread *nt = (natThread *) data;
|
||||
_Jv_ThreadInterrupt (nt->thread);
|
||||
}
|
||||
@ -321,6 +322,7 @@ java::lang::Thread::start (void)
|
||||
void
|
||||
java::lang::Thread::stop (java::lang::Throwable *)
|
||||
{
|
||||
checkAccess ();
|
||||
throw new UnsupportedOperationException
|
||||
(JvNewStringLatin1 ("Thread.stop unimplemented"));
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user