summaryrefslogtreecommitdiff
path: root/innobase/include/rem0rec.ic
diff options
context:
space:
mode:
authorunknown <marko@hundin.mysql.fi>2004-12-28 01:34:52 +0200
committerunknown <marko@hundin.mysql.fi>2004-12-28 01:34:52 +0200
commit7ce58befd33d78e1c11872fcbc696a9cfad698c2 (patch)
tree6da5ac10b2bcc95fc1120e9a5d69928fdbe40917 /innobase/include/rem0rec.ic
parente3c7697431c144215af2f752d5c23b5b06e29982 (diff)
downloadmariadb-git-7ce58befd33d78e1c11872fcbc696a9cfad698c2.tar.gz
InnoDB: Fix some bugs in the new record format. (Bug #7493)
innobase/btr/btr0btr.c: Remove parameter n_fields from cmp_rec_rec() innobase/btr/btr0cur.c: Remove parameter n_fields from cmp_rec_rec_with_match() innobase/btr/btr0pcur.c: Remove parameter n_fields from cmp_rec_rec() innobase/include/rem0cmp.h: Remove parameter n from cmp_rec_rec_with_match() and cmp_rec_rec() innobase/include/rem0cmp.ic: Remove parameter n from cmp_rec_rec() innobase/include/rem0rec.ic: Correct the implementation of rec_offs_nth_size() (Bug #7493) innobase/page/page0page.c: Remove parameter n_fields from cmp_rec_rec() innobase/rem/rem0cmp.c: Remove parameter n from cmp_rec_rec_with_match() innobase/rem/rem0rec.c: rec_get_offsets(): Pass the number of allocated elements to rec_offs_set_n_alloc() instead of the number of allocated bytes, so that debugging assertions are more likely to detect out-of-bounds errors.
Diffstat (limited to 'innobase/include/rem0rec.ic')
-rw-r--r--innobase/include/rem0rec.ic3
1 files changed, 2 insertions, 1 deletions
diff --git a/innobase/include/rem0rec.ic b/innobase/include/rem0rec.ic
index 2a1f8c8a0db..b9a79c259a4 100644
--- a/innobase/include/rem0rec.ic
+++ b/innobase/include/rem0rec.ic
@@ -946,7 +946,8 @@ rec_offs_nth_size(
{
ut_ad(rec_offs_validate(NULL, NULL, offsets));
ut_ad(n < rec_offs_n_fields(offsets));
- return(rec_offs_base(offsets)[1 + n] & REC_OFFS_MASK);
+ return((rec_offs_base(offsets)[1 + n] - rec_offs_base(offsets)[n])
+ & REC_OFFS_MASK);
}
/**********************************************************