Mercurial > hg > release > icedtea6-1.4
changeset 1209:bc2e4f1176b2
2008-11-14 Omair Majid <omajid@redhat.com>
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java
Removed useless SuppressWarnings.
(static): Delegate the loading of native libraries to SecurityWrapper.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/SecurityWrapper.java
New class.
(loadNativeLibrary): Loads libpulse-java.so in a privileged operation to
work when a security manager is installed.
author | Omair Majid <omajid@redhat.com> |
---|---|
date | Fri, 14 Nov 2008 10:10:11 -0500 |
parents | 89e71b641b8e |
children | 4548cfdc09fe |
files | ChangeLog pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java pulseaudio/src/java/org/classpath/icedtea/pulseaudio/SecurityWrapper.java pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java |
diffstat | 8 files changed, 53 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Tue Nov 11 04:38:04 2008 -0500 +++ b/ChangeLog Fri Nov 14 10:10:11 2008 -0500 @@ -1,3 +1,23 @@ +2008-11-14 Omair Majid <omajid@redhat.com> + + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java + Removed useless SuppressWarnings. + (static): Delegate the loading of native libraries to SecurityWrapper. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java + (static): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java + (static): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java + (static): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java + (static): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java + (static): Likewise. + * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/SecurityWrapper.java + New class. + (loadNativeLibrary): Loads libpulse-java.so in a privileged operation to + work when a security manager is installed. + 2008-11-11 Gary Benson <gbenson@redhat.com> * ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Tue Nov 11 04:38:04 2008 -0500 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Fri Nov 14 10:10:11 2008 -0500 @@ -92,9 +92,7 @@ /* * These fields hold pointers */ - @SuppressWarnings("unused") private byte[] contextPointer; - @SuppressWarnings("unused") private byte[] mainloopPointer; /* @@ -102,7 +100,7 @@ */ static { - System.loadLibrary("pulse-java"); + SecurityWrapper.loadNativeLibrary(); } private EventLoop() {
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java Tue Nov 11 04:38:04 2008 -0500 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java Fri Nov 14 10:10:11 2008 -0500 @@ -58,7 +58,7 @@ } static { - System.loadLibrary("pulse-java"); + SecurityWrapper.loadNativeLibrary(); } private native void native_ref();
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Tue Nov 11 04:38:04 2008 -0500 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Fri Nov 14 10:10:11 2008 -0500 @@ -63,7 +63,7 @@ private PulseAudioVolumeControl volumeControl; static { - System.loadLibrary("pulse-java"); + SecurityWrapper.loadNativeLibrary(); } public PulseAudioPort(String name) {
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Tue Nov 11 04:38:04 2008 -0500 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Fri Nov 14 10:10:11 2008 -0500 @@ -45,7 +45,7 @@ /* aka mic */ static { - System.loadLibrary("pulse-java"); + SecurityWrapper.loadNativeLibrary(); } public PulseAudioSourcePort(String name) {
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Tue Nov 11 04:38:04 2008 -0500 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Fri Nov 14 10:10:11 2008 -0500 @@ -44,7 +44,7 @@ /* aka speaker */ static { - System.loadLibrary("pulse-java"); + SecurityWrapper.loadNativeLibrary(); } public PulseAudioTargetPort(String name) {
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/SecurityWrapper.java Fri Nov 14 10:10:11 2008 -0500 @@ -0,0 +1,27 @@ +package org.classpath.icedtea.pulseaudio; + +import java.security.AccessController; +import java.security.PrivilegedAction; + +class SecurityWrapper { + + public static void loadNativeLibrary() { + + if (System.getSecurityManager() != null) { + PrivilegedAction<Boolean> action = new PrivilegedAction<Boolean>() { + @Override + public Boolean run() { + System.loadLibrary("pulse-java"); + return true; + } + + }; + + AccessController.doPrivileged(action); + + } else { + System.loadLibrary("pulse-java"); + } + + } +}
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java Tue Nov 11 04:38:04 2008 -0500 +++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java Fri Nov 14 10:10:11 2008 -0500 @@ -104,11 +104,10 @@ public static final String DEFAULT_DEVICE = null; - @SuppressWarnings("unused") private byte[] streamPointer; static { - System.loadLibrary("pulse-java"); + SecurityWrapper.loadNativeLibrary(); } private Format format;