From a6ea791cb96f76fd600f6547a715e24ef66ba5e2 Mon Sep 17 00:00:00 2001 From: Tyler Hall Date: Wed, 12 Apr 2017 16:29:16 -0400 Subject: cramfs: block pointers are 32 bits Using a variably-sized type is incorrect here since we're reading a fixed file format. Fixes cramfs on 64-bit platforms. Signed-off-by: Tyler Hall diff --git a/fs/cramfs/cramfs.c b/fs/cramfs/cramfs.c index 05ed272..ca8bc5e 100644 --- a/fs/cramfs/cramfs.c +++ b/fs/cramfs/cramfs.c @@ -162,7 +162,7 @@ static int cramfs_uncompress (unsigned long begin, unsigned long offset, unsigned long loadoffset) { struct cramfs_inode *inode = (struct cramfs_inode *) (begin + offset); - unsigned long *block_ptrs = (unsigned long *) + u32 *block_ptrs = (u32 *) (begin + (CRAMFS_GET_OFFSET (inode) << 2)); unsigned long curr_block = (CRAMFS_GET_OFFSET (inode) + (((CRAMFS_24 (inode->size)) + -- cgit v0.10.2