From 6c88ef1c81fce18d6545c4ee8d0df32a25098770 Mon Sep 17 00:00:00 2001 From: Adrian Chadd Date: Thu, 16 Apr 2020 23:29:49 +0000 Subject: [PATCH] [libsa] Fix typecast of pointer for st_dev This code was trying to use a pointer value for st_dev, which is definitely not a pointer. Instead, cast to uintptr_t so it becomes a non-pointer value before casting it. Tested: mips-gcc cross compile, mips32 build --- stand/libsa/pkgfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stand/libsa/pkgfs.c b/stand/libsa/pkgfs.c index d4794963b2c1..4f52b6bb6b9b 100644 --- a/stand/libsa/pkgfs.c +++ b/stand/libsa/pkgfs.c @@ -399,7 +399,7 @@ pkg_stat(struct open_file *f, struct stat *sb) sb->st_size = tf->tf_size; sb->st_blocks = (tf->tf_size + 511) / 512; sb->st_mtime = pkg_atol(tf->tf_hdr.ut_mtime, 12); - sb->st_dev = (off_t)tf->tf_pkg; + sb->st_dev = (off_t)((uintptr_t)tf->tf_pkg); sb->st_ino = tf->tf_ofs; /* unique per tf_pkg */ return (0); }