Fallback to doNothing if /proc/loadavg cant be opened (#7123)

This commit is contained in:
Yuriy Glukhov 2018-01-22 15:52:22 +03:00 • committed by Andreas Rumpf
commit ecbbefcc83

View file

@ -60,7 +60,8 @@ proc advice*(s: var ThreadPoolState): ThreadPoolAdvice =
proc fscanf(c: File, frmt: cstring) {.varargs, importc,
header: "<stdio.h>".}
var f = open("/proc/loadavg")
var f: File
if f.open("/proc/loadavg"):
var b: float
var busy, total: int
fscanf(f,"%lf %lf %lf %ld/%ld",
@ -73,6 +74,8 @@ proc advice*(s: var ThreadPoolState): ThreadPoolAdvice =
result = doShutdownThread
else:
result = doNothing
else:
result = doNothing
else:
# XXX implement this for other OSes
result = doNothing