This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch release/4.0.2.x in repository x2goclient. commit 0858f328936b3b3ab1a069a041f5de75f238e009 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 18cb7d1..fe3cbd4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -39,6 +39,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 f09d80d..96914c0 100644 --- a/onmainwindow.cpp +++ b/onmainwindow.cpp @@ -9788,6 +9788,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 1764993..6227c18 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