diff options
| author | Mark Wielaard <mark@klomp.org> | 2005-12-22 16:55:01 +0000 |
|---|---|---|
| committer | Mark Wielaard <mark@klomp.org> | 2005-12-22 16:55:01 +0000 |
| commit | c7705d1a457acc0313865b22c6fdb7ac415cd31d (patch) | |
| tree | 544f1a2450d8300bb151ab018d22f8c5e60b0adb /gnu/java/nio | |
| parent | 7ccffb673f401e3f232eccbefbb793cf15f2f7eb (diff) | |
| download | classpath-c7705d1a457acc0313865b22c6fdb7ac415cd31d.tar.gz | |
* gnu/java/nio/charset/Provider.java (provider): Wrap initialization
of standard provider in a PrivilegedAction.
Diffstat (limited to 'gnu/java/nio')
| -rw-r--r-- | gnu/java/nio/charset/Provider.java | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gnu/java/nio/charset/Provider.java b/gnu/java/nio/charset/Provider.java index 3f25c5988..c7f7ed278 100644 --- a/gnu/java/nio/charset/Provider.java +++ b/gnu/java/nio/charset/Provider.java @@ -39,6 +39,8 @@ package gnu.java.nio.charset; import java.nio.charset.Charset; import java.nio.charset.spi.CharsetProvider; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; @@ -232,8 +234,16 @@ public final class Provider extends CharsetProvider public static synchronized Provider provider () { + // The default provider is safe to instantiate. if (singleton == null) - singleton = new Provider (); + singleton = (Provider) AccessController.doPrivileged + (new PrivilegedAction() + { + public Object run() + { + return new Provider(); + } + }); return singleton; } } |
