mirror of
https://github.com/postgres/postgres.git
synced 2025-06-11 20:28:21 +03:00
Fix wrong allocation size in c8f621c43
.
In c8f621c43
I forgot to account for MAXALIGN when allocating a new
tuplebuf in ReorderBufferGetTupleBuf(). That happens to currently not
cause active problems on a number of platforms because the affected
pointer is already aligned, but others, like ppc and hppa, trigger this
in the regression test, due to a debug memset clearing memory.
Fix that.
Backpatch: 9.4, like the previous commit.
This commit is contained in:
@ -483,7 +483,8 @@ ReorderBufferGetTupleBuf(ReorderBuffer *rb, Size tuple_len)
|
|||||||
{
|
{
|
||||||
tuple = (ReorderBufferTupleBuf *)
|
tuple = (ReorderBufferTupleBuf *)
|
||||||
MemoryContextAlloc(rb->context,
|
MemoryContextAlloc(rb->context,
|
||||||
sizeof(ReorderBufferTupleBuf) + alloc_len);
|
sizeof(ReorderBufferTupleBuf) +
|
||||||
|
MAXIMUM_ALIGNOF + alloc_len);
|
||||||
tuple->alloc_tuple_size = alloc_len;
|
tuple->alloc_tuple_size = alloc_len;
|
||||||
tuple->tuple.t_data = ReorderBufferTupleBufData(tuple);
|
tuple->tuple.t_data = ReorderBufferTupleBufData(tuple);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user