mirror of
https://github.com/postgres/postgres.git
synced 2026-10-23 13:29:09 +03:00
Fix size check in statext_dependencies_deserialize()
The check for the minimum expected bytea size of a MVDependencies object
was using SizeOfItem() for its calculation. This macro uses the number
of attributes in a single dependency.
This minimum size calculation should be based on MinSizeOfItems(), that
computes the minimum expected size as the header plus the
minimally-sized number of dependency items.
Oversight in d08c44f7a4.
Author: Ilia Evdokimov <ilya.evdokimov@tantorlabs.com>
Discussion: https://postgr.es/m/4b8d299d-2505-4c30-bf80-0f697410db35@tantorlabs.com
Backpatch-through: 14
This commit is contained in:
@@ -539,7 +539,7 @@ statext_dependencies_deserialize(bytea *data)
|
||||
elog(ERROR, "invalid zero-length item array in MVDependencies");
|
||||
|
||||
/* what minimum bytea size do we expect for those parameters */
|
||||
min_expected_size = SizeOfItem(dependencies->ndeps);
|
||||
min_expected_size = MinSizeOfItems(dependencies->ndeps);
|
||||
|
||||
if (VARSIZE_ANY_EXHDR(data) < min_expected_size)
|
||||
elog(ERROR, "invalid dependencies size %zd (expected at least %zd)",
|
||||
|
||||
Reference in New Issue
Block a user