From 3d56aa3e605aae00f7988cd4483af862a155dc52 Mon Sep 17 00:00:00 2001 From: Ran Benita Date: Sat, 8 Feb 2014 17:58:39 +0200 Subject: [PATCH] keysym: use safe keysym comparison function Instead of thinking about signed <-> unsigned an whatnot. bsearch() is inline in glibc, so gcc optimizes this away anyway. Signed-off-by: Ran Benita --- src/keysym.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/keysym.c b/src/keysym.c index f52d751..e8fa5e1 100644 --- a/src/keysym.c +++ b/src/keysym.c @@ -64,7 +64,11 @@ compare_by_keysym(const void *a, const void *b) { const xkb_keysym_t *key = a; const struct name_keysym *entry = b; - return *key - (int32_t) entry->keysym; + if (*key < entry->keysym) + return -1; + if (*key > entry->keysym) + return 1; + return 0; } static int -- 2.7.4