This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goclient. commit 081628c70a0aa0dd705bd21e9d70eadf5c81233f Author: Mike DePaulo <mikedep333@gmail.com> Date: Tue Jul 1 20:10:31 2014 -0400 Windows: On XP & Server 2003 (R2), prevent high PulseAudio CPU usage by lowering its CPU priority to "normal" (Fixes #526) --- debian/changelog | 3 +++ onmainwindow.cpp | 18 ++++++++++++++++++ onmainwindow.h | 1 + 3 files changed, 22 insertions(+) diff --git a/debian/changelog b/debian/changelog index 32c7da0..0f7f54d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -55,6 +55,9 @@ x2goclient (4.0.2.1-0x2go1) UNRELEASED; urgency=low [ Mike DePaulo ] * New upstream release (4.0.2.1): + - Windows: Prevent high PulseAudio CPU usage on Windows XP by lowering + PulseAudio's CPU priority from "high" to "normal" on XP specifically. + Also do so on Windows Server 2003 (R2) (Fixes #526) - Windows: Enable PulseAudio log when --debug is passed. - Windows: Fix compatibility with current PulseAudio master branch - Windows: Reduce size of NSIS installer by switching to lzma solid compression diff --git a/onmainwindow.cpp b/onmainwindow.cpp index 6f2e89c..05ed0d9 100644 --- a/onmainwindow.cpp +++ b/onmainwindow.cpp @@ -9836,6 +9836,24 @@ void ONMainWindow::startPulsed() pulseArgs<<"--exit-idle-time=-1"<<"-n"<<"-F"<<pulseDir+"\\config.pa"; if (debugging) pulseArgs<<"--log-level=debug"<<"--verbose"<<"--log-target=file:"+pulseDir+"\\pulse.log"; + /* + Fix for x2goclient bug #526. + Works Around PulseAudio bug #80772. + Tested with PulseAudio 5.0. + This argument will not cause PulseAudio 0.9.6 or 1.1 (the legacy versions) + to fail to launch. + However, 0.9.6 defaults to normal priority anyway, + and 1.1 ignores it for some reason. + So yes, the fact that 1.1 ignores it would be a bug in x2goclient if we + ever ship 1.1 again. + */ + if (QSysInfo::WindowsVersion == QSysInfo::WV_XP || + QSysInfo::WindowsVersion == QSysInfo::WV_2003 ) + { + x2goDebug<<"Windows XP or Server 2003 (R2) detected."; + x2goDebug<<"Setting PulseAudio to \"Normal\" CPU priority."; + pulseArgs<<"--high-priority=no"; + } #else pulseArgs<<"--exit-idle-time=-1"<<"-n"<<"-F"<<pulseDir+"/config.pa"; #endif diff --git a/onmainwindow.h b/onmainwindow.h index 88b5da7..9954c3d 100644 --- a/onmainwindow.h +++ b/onmainwindow.h @@ -47,6 +47,7 @@ #ifdef Q_OS_WIN #include <windows.h> +#include <QSysInfo> #endif /** @author Oleksandr Shneyder -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goclient.git