diff --git a/Userland/Libraries/LibC/malloc.cpp b/Userland/Libraries/LibC/malloc.cpp index b9afd147f44529..f67dc0b4f362bd 100644 --- a/Userland/Libraries/LibC/malloc.cpp +++ b/Userland/Libraries/LibC/malloc.cpp @@ -528,7 +528,7 @@ size_t malloc_size(void const* ptr) auto* header = (const CommonHeader*)page_base; auto size = header->m_size; if (header->m_magic == MAGIC_BIGALLOC_HEADER) - size -= sizeof(CommonHeader); + size -= sizeof(BigAllocationBlock); else VERIFY(header->m_magic == MAGIC_PAGE_HEADER); return size; diff --git a/Userland/Libraries/LibC/mallocdefs.h b/Userland/Libraries/LibC/mallocdefs.h index ca7cf9a30f73e7..63fd0071f35204 100644 --- a/Userland/Libraries/LibC/mallocdefs.h +++ b/Userland/Libraries/LibC/mallocdefs.h @@ -46,7 +46,7 @@ struct BigAllocationBlock : public CommonHeader { m_magic = MAGIC_BIGALLOC_HEADER; m_size = size; } - unsigned char* m_slot[0]; + alignas(16) unsigned char* m_slot[0]; }; struct FreelistEntry {