Daniele Bartolini 12 лет назад
Родитель
Сommit
523d9068d6
1 измененных файлов с 8 добавлено и 1 удалено
  1. 8 1
      src/core/mem/Memory.h

+ 8 - 1
src/core/mem/Memory.h

@@ -45,7 +45,14 @@ inline void* align_top(void* p, size_t align)
 
 	uintptr_t ptr = (uintptr_t)p;
 
-	return (void*)(ptr + (ptr & (align - 1)));
+	const size_t mod = ptr % align;
+
+	if (mod)
+	{
+		ptr += align - mod;
+	}
+
+	return (void*) ptr;
 }
 
 } // namespace memory