changeset 1171:3120ce63433d

2008-11-03 Omair Majid <omajid@redhat.com> * patches/icedtea-alsa-default-device.patch: New patch. Use the ALSA 'default' device if possible. Makes Java play nice with PulseAudio.
author Omair Majid <omajid@redhat.com>
date Mon, 03 Nov 2008 16:55:57 -0500
parents f58ec27b8941
children 835cdb193847
files ChangeLog Makefile.am patches/icedtea-alsa-default-device.patch
diffstat 3 files changed, 24 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon Nov 03 08:56:35 2008 -0500
+++ b/ChangeLog	Mon Nov 03 16:55:57 2008 -0500
@@ -1,3 +1,8 @@
+2008-11-03  Omair Majid  <omajid@redhat.com>
+
+	* patches/icedtea-alsa-default-device.patch: New patch. Use the ALSA 
+	'default' device if possible. Makes Java play nice with PulseAudio.
+
 2008-11-03  Gary Benson  <gbenson@redhat.com>
 
 	* ports/hotspot/src/share/vm/shark/sharkBlock.cpp
--- a/Makefile.am	Mon Nov 03 08:56:35 2008 -0500
+++ b/Makefile.am	Mon Nov 03 16:55:57 2008 -0500
@@ -532,7 +532,8 @@
 	$(VISUALVM_PATCH) \
 	patches/icedtea-javac-debuginfo.patch \
 	patches/icedtea-xjc.patch \
-	patches/icedtea-renderer-crossing.patch
+	patches/icedtea-renderer-crossing.patch \
+	patches/icedtea-alsa-default-device.patch
 
 if WITH_RHINO
 ICEDTEA_PATCHES += \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/icedtea-alsa-default-device.patch	Mon Nov 03 16:55:57 2008 -0500
@@ -0,0 +1,17 @@
+diff -uNr openjdk-orig/jdk/src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_PCM.c openjdk/jdk/src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_PCM.c
+--- openjdk-orig/jdk/src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_PCM.c	2008-11-03 15:02:16.000000000 -0500
++++ openjdk/jdk/src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_PCM.c	2008-11-03 15:08:07.000000000 -0500
+@@ -143,8 +143,12 @@
+             ERROR1("snd_pcm_hw_params_malloc returned error %d\n", ret);
+         } else {
+             ret = snd_pcm_hw_params_any(handle, hwParams);
+-            if (ret != 0) {
++            /* snd_pcm_hw_params_any can return a positive value on success too */
++            if (ret < 0) {
+                 ERROR1("snd_pcm_hw_params_any returned error %d\n", ret);
++            } else {
++                /* for the logic following this code, set ret to 0 to indicate success */
++                ret = 0;
+             }
+         }
+         snd_pcm_hw_params_get_format_mask(hwParams, formatMask);