summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJari Vetoniemi <mailroxas@gmail.com>2017-02-14 18:02:53 +0200
committerJari Vetoniemi <mailroxas@gmail.com>2017-02-14 19:20:44 +0200
commitebea91902dc3bad0a35e52d6e4af265092a8d5c7 (patch)
tree39b0c2e46db0aa72eed6a0cb488c03b3b77a1ac9 /lib
parentf1019bb500dd3b1ec6945382dff336676ab3da55 (diff)
downloadbemenu-ebea91902dc3bad0a35e52d6e4af265092a8d5c7.tar.gz
bemenu-ebea91902dc3bad0a35e52d6e4af265092a8d5c7.tar.bz2
bemenu-ebea91902dc3bad0a35e52d6e4af265092a8d5c7.zip
Fix gcc warnings
Diffstat (limited to 'lib')
-rw-r--r--lib/util.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/util.c b/lib/util.c
index 0bacc4e..7f539aa 100644
--- a/lib/util.c
+++ b/lib/util.c
@@ -385,16 +385,16 @@ bm_unicode_insert(char **in_out_string, size_t *in_out_buf_size, size_t start, u
{
assert(in_out_string && in_out_buf_size);
- char u8len = ((unicode < 0x80) ? 1 : ((unicode < 0x800) ? 2 : ((unicode < 0x10000) ? 3 : 4)));
+ uint8_t u8len = ((unicode < 0x80) ? 1 : ((unicode < 0x800) ? 2 : ((unicode < 0x10000) ? 3 : 4)));
char mb[5] = { 0, 0, 0, 0 };
if (u8len == 1) {
mb[0] = unicode;
} else {
- size_t i, j;
- for (i = j = u8len; j > 1; --j) mb[j - 1] = 0x80 | (0x3F & (unicode >> ((i - j) * 6)));
- mb[0] = (~0) << (8 - i);
- mb[0] |= (unicode >> (i * 6 - 6));
+ size_t j;
+ for (j = u8len; j > 1; --j) mb[j - 1] = 0x80 | (0x3F & (unicode >> ((u8len - j) * 6)));
+ mb[0] = (uint8_t)(~0) << (8 - u8len);
+ mb[0] |= (unicode >> (u8len * 6 - 6));
}
return bm_utf8_rune_insert(in_out_string, in_out_buf_size, start, mb, u8len, out_rune_width);