Denys Vlasenko schrieb:
> On Sunday 15 March 2009 16:47, walter harms wrote:
>>> Try attached patch, it fixes all these problems in my testing.
>> I have tested the patch and it seems to work ok.
>> [:xdigit:] seems to work
>>
>> While testing i noticed that tr -dc [z-A] behaver differs from GNU tr
>>
>> GNU:
>> tr -dc [z-A]
>> tr: range-endpoints of `z-A' are in reverse collating sequence order
>>
>>
>> therefor i suggest a patch like that:
>>
>> --- coreutils/tr.c.org 2009-03-15 16:07:41.000000000 +0100
>> +++ coreutils/tr.c 2009-03-15 16:14:06.000000000 +0100
>> @@ -62,6 +62,9 @@
>> continue; /* next iter will copy '-' and
>> stop */
>> }
>> i = *arg;
>> + if (arg[0]>arg[3])
>
> arg is "const char *arg". Bug above if char type is signed.
> Also, I suspect no one has scripts which depend on
> that "tr z-A" fails, that would be strange.
>
yep, but the point is that GNU tr fails while bb tr works.
I still suggest add the check (with casting) to have the same behaver.
re,
wh
>> + bb_error_msg_and_die("Endpoints in reverse order");
>> +
>> while (i <= ac) /* ok: i is unsigned _int_ */
>> *buffer++ = i++;
>> arg += 3; /* skip 0-9 */
>
_______________________________________________
busybox mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/busybox