diff options
author | FreeArtMan <dos21h@gmail.com> | 2019-09-25 19:17:09 +0100 |
---|---|---|
committer | FreeArtMan <dos21h@gmail.com> | 2019-09-25 19:17:09 +0100 |
commit | 3e187c094f12ef41ea6de2f55d128c3e037b5c12 (patch) | |
tree | f0dbbc5df260532e284ca5264297d0a8044eaeb4 /cmd/cmd_dumpx.c | |
parent | bbd73385a0db271b457c63e4d6bab54f581410f9 (diff) | |
download | ihe-3e187c094f12ef41ea6de2f55d128c3e037b5c12.tar.gz ihe-3e187c094f12ef41ea6de2f55d128c3e037b5c12.zip |
Untested version, recompiled with new buf library and with c+
Diffstat (limited to 'cmd/cmd_dumpx.c')
-rw-r--r-- | cmd/cmd_dumpx.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/cmd/cmd_dumpx.c b/cmd/cmd_dumpx.c index 3e6cdf1..ecca20c 100644 --- a/cmd/cmd_dumpx.c +++ b/cmd/cmd_dumpx.c @@ -8,26 +8,28 @@ #include "libcmd/cmd_parse.h" extern file_t *g_file; -extern buf_t *g_buf; +extern Buf *g_buf; extern int g_flags; int c_dumpx( cmd_arg_t *arg ) { int i,j; - if ( g_buf->buf == NULL) + if ( g_buf->isempty() ) { printf("Buffer to print empty\n"); return -1; } - for (i=0; i<g_buf->size; i+=16) + for (i=0; i<g_buf->size(); i+=16) { for (j=i; j<i+16; j++) { - if ( j<g_buf->size ) + if ( j<g_buf->size() ) { - printf("%02x ",(unsigned char)g_buf->buf[j]); + char c; + g_buf->getc(j,&c); + printf("%02x ",(unsigned char)c); } else { printf(" "); @@ -36,11 +38,14 @@ int c_dumpx( cmd_arg_t *arg ) for (j=i; j<i+16; j++) { - if ( j<g_buf->size ) //wrong place move to cycle? + if ( j<g_buf->size() ) //wrong place move to cycle? { - if ( isprint(g_buf->buf[j]) ) + char c; + g_buf->getc(j,&c); + if ( isprint(c) ) { - printf("%c",(unsigned char)g_buf->buf[j]); + + printf("%c",(unsigned char)c); } else { printf("\e[7m.\e[0m"); |