From 8e66b83b705e257b78ec98abdb86e7f8b3b5c775 Mon Sep 17 00:00:00 2001
From: Anton Kling <anton@kling.gg>
Date: Sat, 6 Jul 2024 19:41:10 +0200
Subject: Kernel: Fix integer overflow

---
 kernel/lib/relist.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

(limited to 'kernel/lib')

diff --git a/kernel/lib/relist.c b/kernel/lib/relist.c
index 5c03ab2..a681435 100644
--- a/kernel/lib/relist.c
+++ b/kernel/lib/relist.c
@@ -114,7 +114,7 @@ int relist_remove(struct relist *list, u32 index) {
     assert(0);
     return 0;
   }
-  int is_used = (list->bitmap[index / 64] & ((u64)1 << (index % 64)));
+  int is_used = (list->bitmap[index / 64] & ((u64)1 << (index % 64))) ? 1 : 0;
   if (!is_used) {
     assert(0);
     return 0;
@@ -144,7 +144,7 @@ int relist_get(const struct relist *list, u32 index, void **out, int *end) {
     }
     return 0;
   }
-  int is_used = (list->bitmap[index / 64] & ((u64)1 << (index % 64)));
+  int is_used = (list->bitmap[index / 64] & ((u64)1 << (index % 64))) ? 1 : 0;
   if (!is_used) {
     return 0;
   }
-- 
cgit v1.2.3