From 6b57898034f7b38d4dc26dc1d5fa718013a12472 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20G=C3=B6ttsche?= Date: Wed, 19 May 2021 19:06:34 +0200 Subject: Solaris: reduce variable scope Also check for getloadavg(3c) failure --- solaris/Platform.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'solaris/Platform.c') diff --git a/solaris/Platform.c b/solaris/Platform.c index 06b6c357..1d4568a0 100644 --- a/solaris/Platform.c +++ b/solaris/Platform.c @@ -39,8 +39,6 @@ in the source distribution for its full text. #include "SolarisProcessList.h" -double plat_loadavg[3] = {0}; - const SignalItem Platform_signals[] = { { .name = " 0 Cancel", .number = 0 }, { .name = " 1 SIGHUP", .number = 1 }, @@ -152,7 +150,13 @@ int Platform_getUptime() { } void Platform_getLoadAverage(double* one, double* five, double* fifteen) { - getloadavg( plat_loadavg, 3 ); + double plat_loadavg[3]; + if (getloadavg( plat_loadavg, 3 ) < 0) { + *one = NAN; + *five = NAN; + *fifteen = NAN; + return; + } *one = plat_loadavg[LOADAVG_1MIN]; *five = plat_loadavg[LOADAVG_5MIN]; *fifteen = plat_loadavg[LOADAVG_15MIN]; -- cgit v1.2.3