#pragma comment(lib, "winmm.lib")
#endif
#else
+# ifdef __FreeBSD__
+# include <sys/sysctl.h>
+# endif
# include <unistd.h>
# include <fcntl.h>
# include <sys/time.h>
static char exenamebuf[MAX_OSPATH+1];
ssize_t n = -1;
#if defined(__FreeBSD__)
- n = readlink("/proc/curproc/file", exenamebuf, sizeof(exenamebuf)-1);
+ int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1};
+ size_t exenamebuflen = sizeof(exenamebuf)-1;
+ if (sysctl(mib, 4, exenamebuf, &exenamebuflen, NULL, 0) == 0)
+ {
+ n = exenamebuflen;
+ }
#elif defined(__linux__)
n = readlink("/proc/self/exe", exenamebuf, sizeof(exenamebuf)-1);
#endif
return;
Con_DPrintf("Process is becoming 'nice'...\n");
if(setpriority(PRIO_PROCESS, 0, 19))
- Con_Printf("Failed to raise nice level to %d\n", 19);
+ Con_Errorf("Failed to raise nice level to %d\n", 19);
isnice = true;
}
void Sys_MakeProcessMean (void)
return;
Con_DPrintf("Process is becoming 'mean'...\n");
if(setpriority(PRIO_PROCESS, 0, nicelevel))
- Con_Printf("Failed to lower nice level to %d\n", nicelevel);
+ Con_Errorf("Failed to lower nice level to %d\n", nicelevel);
isnice = false;
}
#else