ref: 19d881290deb3cde837c70395d72d3a8f482c2b0
parent: a19b9b618522fd02a3dfe99a72f3daddcae1ec03
author: James Zern <[email protected]>
date: Sat Aug 27 06:34:40 EDT 2016
vpx_mem,align_addr: use ~ to create mask removes the need for an intermediate cast to int, which was missing in the call added in: 69c5ba1 vpx_mem: Refactor code quiets a visual studio warning: C4146: unary minus operator applied to unsigned type, result still unsigned Change-Id: I76c4003416759c6c76b78f74de7c0d2ba5071216
--- a/vpx_mem/include/vpx_mem_intrnl.h
+++ b/vpx_mem/include/vpx_mem_intrnl.h
@@ -26,6 +26,6 @@
/*returns an addr aligned to the byte boundary specified by align*/
#define align_addr(addr, align) \
- (void *)(((size_t)(addr) + ((align)-1)) & (size_t) - (align))
+ (void *)(((size_t)(addr) + ((align)-1)) & ~(size_t)((align)-1))
#endif // VPX_MEM_INCLUDE_VPX_MEM_INTRNL_H_
--- a/vpx_mem/vpx_mem.c
+++ b/vpx_mem/vpx_mem.c
@@ -59,7 +59,7 @@
addr = malloc((size_t)aligned_size);
if (addr) {
- x = align_addr((unsigned char *)addr + ADDRESS_STORAGE_SIZE, (int)align);
+ x = align_addr((unsigned char *)addr + ADDRESS_STORAGE_SIZE, align);
set_actual_malloc_address(x, addr);
}
return x;