1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

Applying InnoDB snapshot

Detailed revision comments:

r6868 | mmakela | 2010-03-25 13:03:08 +0200 (Thu, 25 Mar 2010) | 1 line
branches/zip: page_validate(): Check the buf[] bounds.
This commit is contained in:
Sergey Vojtovich
2010-04-01 16:58:02 +04:00
parent 242f45fd08
commit 2b33751d00

View File

@@ -2414,8 +2414,13 @@ page_validate(
}
offs = page_offset(rec_get_start(rec, offsets));
i = rec_offs_size(offsets);
if (UNIV_UNLIKELY(offs + i >= UNIV_PAGE_SIZE)) {
fputs("InnoDB: record offset out of bounds\n", stderr);
goto func_exit;
}
for (i = rec_offs_size(offsets); i--; ) {
while (i--) {
if (UNIV_UNLIKELY(buf[offs + i])) {
/* No other record may overlap this */
@@ -2523,8 +2528,13 @@ n_owned_zero:
count++;
offs = page_offset(rec_get_start(rec, offsets));
i = rec_offs_size(offsets);
if (UNIV_UNLIKELY(offs + i >= UNIV_PAGE_SIZE)) {
fputs("InnoDB: record offset out of bounds\n", stderr);
goto func_exit;
}
for (i = rec_offs_size(offsets); i--; ) {
while (i--) {
if (UNIV_UNLIKELY(buf[offs + i])) {
fputs("InnoDB: Record overlaps another"