From 4ba266b7b08cf5914b5ec6912763d319f57f00bc Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Sat, 14 Jul 2012 22:59:17 -0700 Subject: ILong: shift each byte individually, then OR them together instead of shifting the whole word as each byte is loaded into place Signed-off-by: Alan Coopersmith --- x11.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'x11.h') diff --git a/x11.h b/x11.h index ed0f3d6..a3c8cb9 100644 --- a/x11.h +++ b/x11.h @@ -547,8 +547,8 @@ ILong(const unsigned char buf[]) { /* check for byte-swapping */ if (littleEndian) - return ((((((buf[3] << 8) | buf[2]) << 8) | buf[1]) << 8) | buf[0]); - return ((((((buf[0] << 8) | buf[1]) << 8) | buf[2]) << 8) | buf[3]); + return ((buf[3] << 24) | (buf[2] << 16) | (buf[1] << 8) | buf[0]); + return ((buf[0] << 24) | (buf[1] << 16) | (buf[2] << 8) | buf[3]); } static inline uint16_t -- cgit v1.2.1