diff options
author | Zhong,Fangjian <fangjian.zhong@intel.com> | 2019-07-29 15:51:02 +0800 |
---|---|---|
committer | Fangjian Zhong <fangjian.zhong@intel.com> | 2019-08-02 07:10:56 +0000 |
commit | 6682011fa829649000e5587ce02559e069e38e3f (patch) | |
tree | 73a10bea594d1554f00e7e634ad912379a0ef219 /lib | |
parent | c086416b570c58a4d17e1e4e1635ed8dc1848795 (diff) | |
download | common-6682011fa829649000e5587ce02559e069e38e3f.tar.gz |
[lib][debug] Fix UBSan issue
Use unsigned char to replace char to avoid potential conversion overflow
Bug: 119111590
Change-Id: I1d70d9acd371a8c9877ae76bfe82a74c9dac7cd9
Diffstat (limited to 'lib')
-rw-r--r-- | lib/debug/debug.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/debug/debug.c b/lib/debug/debug.c index a42e8e0b..ee68053f 100644 --- a/lib/debug/debug.c +++ b/lib/debug/debug.c @@ -128,7 +128,7 @@ void hexdump(const void *ptr, size_t len) printf("|"); for (i=0; i < 16; i++) { - char c = u.cbuf[i]; + unsigned char c = u.cbuf[i]; if (i < s && isprint(c)) { printf("%c", c); } else { @@ -163,7 +163,7 @@ void hexdump8_ex(const void *ptr, size_t len, uint64_t disp_addr) printf("|"); for (i=0; i < MIN(len - count, 16); i++) { - char c = ((const char *)address)[i]; + unsigned char c = ((const char *)address)[i]; printf("%c", isprint(c) ? c : '.'); } |