Use iswprint() instead of isprint()
This commit is contained in:
@@ -168,7 +168,7 @@ int vt_parser( int fd, Parser::UTF8Parser *parser )
|
||||
assert( act );
|
||||
|
||||
if ( act->char_present ) {
|
||||
if ( isprint( act->ch ) ) {
|
||||
if ( iswprint( act->ch ) ) {
|
||||
printf( "%s(0x%02x=%lc) ", act->name().c_str(), act->ch, act->ch );
|
||||
} else {
|
||||
printf( "%s(0x%02x) ", act->name().c_str(), act->ch );
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
#include <stdio.h>
|
||||
#include <ctype.h>
|
||||
#include <wctype.h>
|
||||
|
||||
#include "parseraction.hpp"
|
||||
#include "terminal.hpp"
|
||||
@@ -10,7 +10,7 @@ std::string Action::str( void )
|
||||
{
|
||||
char thechar[ 10 ] = { 0 };
|
||||
if ( char_present ) {
|
||||
snprintf( thechar, 10, isprint( ch ) ? "(%lc)" : "(0x%x)", ch );
|
||||
snprintf( thechar, 10, iswprint( ch ) ? "(%lc)" : "(0x%x)", ch );
|
||||
}
|
||||
|
||||
return name() + std::string( thechar );
|
||||
|
||||
Reference in New Issue
Block a user