Convert to unsigned int before left shift
authorYaowu Xu <yaowu@google.com>
Wed, 25 May 2016 21:02:22 +0000 (14:02 -0700)
committerYaowu Xu <yaowu@google.com>
Thu, 26 May 2016 15:46:01 +0000 (08:46 -0700)
This is to fix overflow when 128 is left shifted by 24.

Change-Id: Ibb5f6813536d985afa003a9848c0c3dd358955a7

vpx_ports/mem_ops.h

index 1f8f914..80c034e 100644 (file)
@@ -89,7 +89,7 @@ static unsigned MEM_VALUE_T mem_get_be32(const void *vmem) {
   unsigned MEM_VALUE_T  val;
   const MAU_T          *mem = (const MAU_T *)vmem;
 
-  val = mem[0] << 24;
+  val = ((unsigned int)mem[0]) << 24;
   val |= mem[1] << 16;
   val |= mem[2] << 8;
   val |= mem[3];