renice +N broken?
Paul Fox
pgf at brightstareng.com
Mon Dec 10 11:53:02 PST 2007
>
> On Monday 10 December 2007 11:01, Paul Fox wrote:
> > it seems that "renice +N <pid>" no longer works. i assume it's
> > supposed to, though the usage message doesn't mention this
> > syntax.
> >
> > i started trying to debug it, but i confess the innards of
> > xatoi_num_template.c were awfully scary. :-) perhaps the answer
> > will be obvious to someone more acquainted with the code.
>
> This should fix it. Can you confirm it?
yes, it does. thanks.
paul
> --
> vda
>
> --Boundary-00=_fQZXHUWWd1ZTMKm
> Content-Type: text/x-diff;
> charset="iso-8859-1";
> name="a.patch"
> Content-Transfer-Encoding: 7bit
> Content-Disposition: attachment;
> filename="a.patch"
>
> diff -d -urpN busybox.9/libbb/xatonum_template.c busybox.a/libbb/xatonum_template.c
> --- busybox.9/libbb/xatonum_template.c 2007-12-01 16:07:12.000000000 -0800
> +++ busybox.a/libbb/xatonum_template.c 2007-12-10 11:30:13.000000000 -0800
> @@ -21,9 +21,8 @@ unsigned type xstrtou(_range_sfx)(const
> int old_errno;
> char *e;
>
> - /* Disallow '-' and any leading whitespace. Speed isn't critical here
> - * since we're parsing commandline args. So make sure we get the
> - * actual isspace function rather than a lnumstrer macro implementaion. */
> + /* Disallow '-' and any leading whitespace. Make sure we get the
> + * actual isspace function rather than a macro implementaion. */
> if (*numstr == '-' || *numstr == '+' || (isspace)(*numstr))
> goto inval;
>
> @@ -127,9 +126,10 @@ type xstrto(_range_sfx)(const char *nums
> type r;
> const char *p = numstr;
>
> - if (p[0] == '-') {
> + if (p[0] == '+' || p[0] == '-') {
> ++p;
> - ++u; /* two's complement */
> + if (p[0] == '-')
> + ++u; /* = type_MIN (01111... + 1 == 10000...) */
> }
>
> r = xstrtou(_range_sfx)(p, base, 0, u, suffixes);
>
> --Boundary-00=_fQZXHUWWd1ZTMKm--
=---------------------
paul fox, pgf at brightstareng.com
More information about the busybox
mailing list