Avoid somewhat-theoretical overflow risks in RecordIsValid(). This improves on commit 51fed14d73ed3acd2282b531fb1396877e44e86a by eliminating the assumption that we can form <some pointer value> + <some offset> without overflow. The entire point of those tests is that we don't trust the offset value, so coding them in a way that could wrap around if the buffer happens to be near the top of memory doesn't seem sound. Instead, track the remaining space as a size_t variable and compare offsets against that.
Also, improve comment about why we need the extra early check on xl_tot_len. Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/10685ec082181b285a48d982b4c3463fd80ee5ae Modified Files -------------- src/backend/access/transam/xlog.c | 26 +++++++++++++++++--------- 1 files changed, 17 insertions(+), 9 deletions(-) -- Sent via pgsql-committers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers
