From 5fc7009037e392ccec021b1251ddfff9a8604368 Mon Sep 17 00:00:00 2001 From: dzwdz Date: Mon, 1 Aug 2022 21:35:03 +0200 Subject: fix some sign comparision warnings --- src/user/lib/fs/dir.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/user/lib/fs') diff --git a/src/user/lib/fs/dir.c b/src/user/lib/fs/dir.c index 0529bfe..35028bd 100644 --- a/src/user/lib/fs/dir.c +++ b/src/user/lib/fs/dir.c @@ -1,5 +1,6 @@ #include #include +#include #include #include @@ -20,10 +21,14 @@ bool dir_append(struct dirbuild *db, const char *name) { bool dir_appendl(struct dirbuild *db, const char *name, size_t len) { if (db->error) return true; + if (len > (size_t)LONG_MAX) { + db->error = -1; + return true; + } len++; // account for the null byte - if (db->offset < len) { + if (db->offset < (long)len) { name += db->offset; len -= db->offset; db->offset = 0; -- cgit v1.2.3