소스 검색

memalign(): verify properly that alignment is a power of two

Ioannis Koutras 11 년 전
부모
커밋
a1b431c304
1개의 변경된 파일2개의 추가작업 그리고 1개의 파일을 삭제
  1. 2 1
      src/memalign.c

+ 2 - 1
src/memalign.c

@@ -54,7 +54,8 @@ void *memalign(size_t alignment, size_t size) {
     DEFAULT_RB_T *encapsulated_rb;
     raw_block_header_t *raw_block;
 
-    assert((alignment & 1) == 0);
+    /* Verify that alignment is a power of two */
+    assert((alignment && !(alignment & (alignment - 1))) != 0);
 
     memptr = NULL;