summaryrefslogtreecommitdiff
path: root/src/xxd
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2018-02-24 18:30:55 +0100
committerBram Moolenaar <Bram@vim.org>2018-02-24 18:30:55 +0100
commit085346f5a1ab5828b1fd80990d93172440c54724 (patch)
tree78649a1b713d4592b88577301402abfec2f84a5e /src/xxd
parent791010e648a68490440e202222938c8a93b9d0d3 (diff)
downloadvim-git-085346f5a1ab5828b1fd80990d93172440c54724.tar.gz
patch 8.0.1537: xxd does not skip NUL lines when using ebcdicv8.0.1537
Problem: Xxd does not skip NUL lines when using ebcdic. Solution: Check for a NUL before converting a character for ebcdic. (Tim Sell, closes #2668)
Diffstat (limited to 'src/xxd')
-rw-r--r--src/xxd/xxd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/xxd/xxd.c b/src/xxd/xxd.c
index f76adaa3a..f89f4d3b0 100644
--- a/src/xxd/xxd.c
+++ b/src/xxd/xxd.c
@@ -827,6 +827,8 @@ main(int argc, char *argv[])
for (i = 7; i >= 0; i--)
l[++c] = (e & (1 << i)) ? '1' : '0';
}
+ if (e)
+ nonzero++;
if (ebcdic)
e = (e < 64) ? '.' : etoa64[e-64];
/* When changing this update definition of LLEN above. */
@@ -837,8 +839,6 @@ main(int argc, char *argv[])
(e > 31 && e < 127)
#endif
? e : '.';
- if (e)
- nonzero++;
n++;
if (++p == cols)
{