From 0e52541917a80a4c5aee9d32fcc81cf9967f2aed Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Fri, 11 Jul 2008 13:57:08 +0000 Subject: taskset: fix some careless code in both fancy and non-fancy cases. -5 bytes for fancy, +5 for non-fancy --- miscutils/taskset.c | 48 +++++++++++++++++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 13 deletions(-) (limited to 'miscutils/taskset.c') diff --git a/miscutils/taskset.c b/miscutils/taskset.c index 3175af10d..b43d42e90 100644 --- a/miscutils/taskset.c +++ b/miscutils/taskset.c @@ -11,31 +11,53 @@ #if ENABLE_FEATURE_TASKSET_FANCY #define TASKSET_PRINTF_MASK "%s" -#define from_cpuset(x) __from_cpuset(&x) /* craft a string from the mask */ -static char *__from_cpuset(cpu_set_t *mask) +static char *from_cpuset(cpu_set_t *mask) { int i; - char *ret = 0, *str = xzalloc(9); + char *ret = NULL; + char *str = xzalloc((CPU_SETSIZE / 4) + 1); /* we will leak it */ for (i = CPU_SETSIZE - 4; i >= 0; i -= 4) { - char val = 0; + int val = 0; int off; for (off = 0; off <= 3; ++off) - if (CPU_ISSET(i+off, mask)) - val |= 1<", * or it was "-p " and we came here -- cgit v1.2.3