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

Reply via email to