From 6c51549d4a945c37965efc8c007a2e0bf630f25f Mon Sep 17 00:00:00 2001 From: Ryan Lortie Date: Tue, 10 Dec 2013 13:27:52 -0500 Subject: [PATCH 2/2] core-util: set_scheduler: check for RLIMIT_RTTIME set_scheduler() assumes that if sys/resource.h was found then we will find RLIMIT_RTTIME there, but this is a non-POSIX extension on Linux. Change the check to ensure that RLIMIT_RTTIME is actually defined. Linux indeed defines this as a macro, and POSIX specifies that the other RLIMIT_ constants must be macros, so having this as an #ifdef seems correct. --- src/pulsecore/core-util.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pulsecore/core-util.c b/src/pulsecore/core-util.c index 06c3884..2efa280 100644 --- a/src/pulsecore/core-util.c +++ b/src/pulsecore/core-util.c @@ -707,7 +707,7 @@ static int set_scheduler(int rtprio) { #ifdef HAVE_DBUS int r; long long rttime; -#ifdef HAVE_SYS_RESOURCE_H +#ifdef RLIMIT_RTTIME struct rlimit rl; #endif DBusError error; @@ -749,7 +749,7 @@ static int set_scheduler(int rtprio) { rttime = rtkit_get_rttime_usec_max(bus); if (rttime >= 0) { -#ifdef HAVE_SYS_RESOURCE_H +#ifdef RLIMIT_RTTIME r = getrlimit(RLIMIT_RTTIME, &rl); if (r >= 0 && (long long) rl.rlim_max > rttime) { -- 1.8.4.2