| Index: syzygy/agent/asan/block.h
|
| diff --git a/syzygy/agent/asan/block.h b/syzygy/agent/asan/block.h
|
| index 093c79e6672e0f990ec04710c83f6c5f1afef7da..b5e5637074ff368255ee169495993fb948b9f0fd 100644
|
| --- a/syzygy/agent/asan/block.h
|
| +++ b/syzygy/agent/asan/block.h
|
| @@ -208,12 +208,22 @@ struct BlockTrailer {
|
| // The time at which the block was freed (zero if not yet freed).
|
| uint32_t free_ticks;
|
| // The ID of the heap that allocated the block.
|
| - uint32_t heap_id;
|
| + size_t heap_id;
|
| +#ifdef _WIN64
|
| + // Add some padding so the trailer size will be a multiple of size
|
| + // (n + 1/2) * kShadowRatio.
|
| + // TODO(sebmarchand): Use this bytes to store more information.
|
| + uint32_t padding_;
|
| +#endif
|
| };
|
| #pragma pack(pop)
|
| static_assert((sizeof(BlockTrailer) % kShadowRatio) == (kShadowRatio / 2),
|
| "Invalid BlockTrailer mod size.");
|
| +#ifndef _WIN64
|
| static_assert(sizeof(BlockTrailer) == 20, "Invalid BlockTrailer size.");
|
| +#else
|
| +static_assert(sizeof(BlockTrailer) == 28, "Invalid BlockTrailer size.");
|
| +#endif
|
|
|
| // A structure for recording the minimum pertinent information about a block.
|
| // Can easily be expanded into a BlockInfo, but requires less space. This makes
|
|
|