From d51df1bb1b5513658a5517d49ed8ded55c819f62 Mon Sep 17 00:00:00 2001 From: andersen Date: Wed, 5 Jul 2000 17:26:35 +0000 Subject: * Fix to tr so it recognizes standard escape sequences. Merged common escape seq. code from tr and echo into utility.c. Fix thanks to Matt Kraai . * This should close Bug #1015. Please test. -Erik git-svn-id: svn://busybox.net/trunk/busybox@737 69ca8d6d-28ef-0310-b511-8ec308f3f277 --- tr.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) (limited to 'tr.c') diff --git a/tr.c b/tr.c index 3e7ba583c..48cdd47bd 100644 --- a/tr.c +++ b/tr.c @@ -111,22 +111,14 @@ static void map(register unsigned char *string1, register unsigned char *string2 } } -static void expand(register char *arg, register unsigned char *buffer) +static void expand(char *arg, register unsigned char *buffer) { int i, ac; while (*arg) { if (*arg == '\\') { arg++; - i = ac = 0; - if (*arg >= '0' && *arg <= '7') { - do { - ac = (ac << 3) + *arg++ - '0'; - i++; - } while (i < 4 && *arg >= '0' && *arg <= '7'); - *buffer++ = ac; - } else if (*arg != '\0') - *buffer++ = *arg++; + *buffer++ = process_escape_sequence(&arg); } else if (*arg == '[') { arg++; i = *arg++; -- cgit v1.2.3-55-g6feb