Fix bug in aligned allocator
diff --git a/src/lisp/plat/linux.c b/src/lisp/plat/linux.c
index 83cc39b..2777950 100644
--- a/src/lisp/plat/linux.c
+++ b/src/lisp/plat/linux.c
@@ -18,7 +18,7 @@
 	void **aligned_ptr = (void **)((uintptr_t)(mem + 8 + sizeof(void *)) & ~7);
 	aligned_ptr[-1] = mem;
 
-	memcpy(aligned_ptr, addr, (uintptr_t)aligned_ptr[-2]);
+	memcpy(aligned_ptr, addr, ((uintptr_t *)addr)[-2]);
 
 	return aligned_ptr;
 }