diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2009-04-12 13:54:13 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2009-04-12 13:54:13 +0000 |
commit | 67b5eeb93324f7484836be705698e72008498fe5 (patch) | |
tree | 146cb9dc174befb20d6a0d75f88bf3cef9cc82ee /editors | |
parent | 32a385f5b0a74ca886e69472aaa1de8045a1ddbd (diff) | |
download | busybox-w32-67b5eeb93324f7484836be705698e72008498fe5.tar.gz busybox-w32-67b5eeb93324f7484836be705698e72008498fe5.tar.bz2 busybox-w32-67b5eeb93324f7484836be705698e72008498fe5.zip |
awk: fix long field separators case. By Ian Wienand (ianw AT vmware.com)
Diffstat (limited to 'editors')
-rw-r--r-- | editors/awk.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/editors/awk.c b/editors/awk.c index 9b15b3cd6..89ce2cfc8 100644 --- a/editors/awk.c +++ b/editors/awk.c | |||
@@ -1574,7 +1574,10 @@ static int awk_split(const char *s, node *spl, char **slist) | |||
1574 | if (s[l]) pmatch[0].rm_eo++; | 1574 | if (s[l]) pmatch[0].rm_eo++; |
1575 | } | 1575 | } |
1576 | memcpy(s1, s, l); | 1576 | memcpy(s1, s, l); |
1577 | s1[l] = '\0'; | 1577 | /* make sure we remove *all* of the separator chars */ |
1578 | while (l < pmatch[0].rm_eo) { | ||
1579 | s1[l++] = '\0'; | ||
1580 | } | ||
1578 | nextword(&s1); | 1581 | nextword(&s1); |
1579 | s += pmatch[0].rm_eo; | 1582 | s += pmatch[0].rm_eo; |
1580 | } while (*s); | 1583 | } while (*s); |