diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2009-04-12 17:54:13 +0400 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2009-04-12 17:54:13 +0400 |
commit | 67b5eeb93324f7484836be705698e72008498fe5 (patch) | |
tree | 146cb9dc174befb20d6a0d75f88bf3cef9cc82ee /editors | |
parent | 32a385f5b0a74ca886e69472aaa1de8045a1ddbd (diff) |
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) if (s[l]) pmatch[0].rm_eo++; } memcpy(s1, s, l); - s1[l] = '\0'; + /* make sure we remove *all* of the separator chars */ + while (l < pmatch[0].rm_eo) { + s1[l++] = '\0'; + } nextword(&s1); s += pmatch[0].rm_eo; } while (*s); |