diff --git a/src/physfs_internal.h b/src/physfs_internal.h index 57bd305..fdb320a 100644 --- a/src/physfs_internal.h +++ b/src/physfs_internal.h @@ -80,8 +80,9 @@ extern "C" { void *__PHYSFS_initSmallAlloc(void *ptr, PHYSFS_uint64 len); #define __PHYSFS_smallAlloc(bytes) ( \ - __PHYSFS_initSmallAlloc((((bytes) < __PHYSFS_SMALLALLOCTHRESHOLD) ? \ - alloca((size_t)((bytes)+1)) : NULL), (bytes)) \ + __PHYSFS_initSmallAlloc( \ + (((bytes) < __PHYSFS_SMALLALLOCTHRESHOLD) ? \ + alloca((size_t)((bytes)+sizeof(void*))) : NULL), (bytes)) \ ) void __PHYSFS_smallFree(void *ptr);