mirror of
https://github.com/isar/libmdbx.git
synced 2025-01-10 02:54:12 +08:00
mdbx: backport - can't use fakepage mp_ptrs directly (ITS#8819).
This commit is contained in:
parent
df08b5144c
commit
2bccc85ff8
3
mdb.c
3
mdb.c
@ -7081,8 +7081,9 @@ prep_subDB:
|
|||||||
} else {
|
} else {
|
||||||
memcpy((char *)mp + mp->mp_upper + PAGEBASE, (char *)fp + fp->mp_upper + PAGEBASE,
|
memcpy((char *)mp + mp->mp_upper + PAGEBASE, (char *)fp + fp->mp_upper + PAGEBASE,
|
||||||
olddata.mv_size - fp->mp_upper - PAGEBASE);
|
olddata.mv_size - fp->mp_upper - PAGEBASE);
|
||||||
|
memcpy((char *)(&mp->mp_ptrs), (char *)(&fp->mp_ptrs), NUMKEYS(fp) * sizeof(mp->mp_ptrs[0]));
|
||||||
for (i=0; i<NUMKEYS(fp); i++)
|
for (i=0; i<NUMKEYS(fp); i++)
|
||||||
mp->mp_ptrs[i] = fp->mp_ptrs[i] + offset;
|
mp->mp_ptrs[i] += offset;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user