diff options
author | Alan Coopersmith <alan.coopersmith@oracle.com> | 2012-07-14 22:59:17 -0700 |
---|---|---|
committer | Alan Coopersmith <alan.coopersmith@oracle.com> | 2012-10-02 22:14:45 -0700 |
commit | 4ba266b7b08cf5914b5ec6912763d319f57f00bc (patch) | |
tree | 3d96bd414a5a9ac076bb77a6a1728069dc2a9c7b | |
parent | 5ec0ba545da0a9e52e2c6a473dbbc81b4a6f7f96 (diff) |
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 <alan.coopersmith@oracle.com>
-rw-r--r-- | x11.h | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -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 |