diff options
| author | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-30 14:50:50 +0000 |
|---|---|---|
| committer | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-30 14:50:50 +0000 |
| commit | 67c7bf80afaf823ba2d24e5205e57544d823766b (patch) | |
| tree | a442b6f713d775dc41e2cad274ba6f5cea81feae /libjava | |
| parent | 41c3c3c90a844ce2be1420938c09d098b745272a (diff) | |
| download | ppe42-gcc-67c7bf80afaf823ba2d24e5205e57544d823766b.tar.gz ppe42-gcc-67c7bf80afaf823ba2d24e5205e57544d823766b.zip | |
2004-07-30 Michael Koch <konqueror@gmx.de>
* gnu/java/awt/EmbeddedWindow.java
(addNotify): Use AccessController to allow execution of privileged
code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85337 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava')
| -rw-r--r-- | libjava/ChangeLog | 6 | ||||
| -rw-r--r-- | libjava/gnu/java/awt/EmbeddedWindow.java | 6 |
2 files changed, 11 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index ba265cf3612..db17ad758e2 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +2004-07-30 Michael Koch <konqueror@gmx.de> + + * gnu/java/awt/EmbeddedWindow.java + (addNotify): Use AccessController to allow execution of privileged + code. + 2004-07-29 Michael Koch <konqueror@gmx.de> * gnu/java/lang/MainThread.java: diff --git a/libjava/gnu/java/awt/EmbeddedWindow.java b/libjava/gnu/java/awt/EmbeddedWindow.java index 5f1d71a8068..08bc02755ea 100644 --- a/libjava/gnu/java/awt/EmbeddedWindow.java +++ b/libjava/gnu/java/awt/EmbeddedWindow.java @@ -40,11 +40,13 @@ package gnu.java.awt; import gnu.classpath.Configuration; import gnu.java.awt.peer.EmbeddedWindowPeer; +import gnu.java.security.action.SetAccessibleAction; import java.awt.Component; import java.awt.Frame; import java.awt.Toolkit; import java.lang.reflect.Field; +import java.security.AccessController; /** * Represents an AWT window that can be embedded into another @@ -88,13 +90,15 @@ public class EmbeddedWindow extends Frame if (! (tk instanceof EmbeddedWindowSupport)) throw new UnsupportedOperationException - ("Embedded windows are not supported by the current peers: " + tk.getClass()); + ("Embedded windows are not supported by the current peers: " + + tk.getClass()); // Circumvent the package-privateness of the AWT internal // java.awt.Component.peer member variable. try { Field peerField = Component.class.getDeclaredField("peer"); + AccessController.doPrivileged(new SetAccessibleAction(peerField)); peerField.set(this, ((EmbeddedWindowSupport) tk).createEmbeddedWindow (this)); } catch (IllegalAccessException e) |

