summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <heikki@hundin.mysql.fi>2004-12-31 15:14:17 +0200
committerunknown <heikki@hundin.mysql.fi>2004-12-31 15:14:17 +0200
commit28911df2d98b3283b6142b82b9ee42dc8448aa4c (patch)
tree58ac28e034be1646fbac8d70ca11ed6c890697ba
parentbfa253025cff0e57d22932408f43afe5c251babc (diff)
downloadmariadb-git-28911df2d98b3283b6142b82b9ee42dc8448aa4c.tar.gz
row0upd.c:
Manually merge the little InnoDB bug fix from 4.1 to 5.0; Marko can then run tests on the fixed version innobase/row/row0upd.c: Manually merge the little InnoDB bug fix from 4.1 to 5.0; Marko can then run tests on the fixed version
-rw-r--r--innobase/row/row0upd.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/innobase/row/row0upd.c b/innobase/row/row0upd.c
index c3b4117ee8b..173912d6956 100644
--- a/innobase/row/row0upd.c
+++ b/innobase/row/row0upd.c
@@ -383,8 +383,14 @@ row_upd_changes_field_size_or_external(
new_len = new_val->len;
if (new_len == UNIV_SQL_NULL && !rec_offs_comp(offsets)) {
+ /* A bug fixed on Dec 31st, 2004: we looked at the
+ SQL NULL size from the wrong field! We may backport
+ this fix also to 4.0. The merge to 5.0 will be made
+ manually immediately after we commit this to 4.1. */
+
new_len = dtype_get_sql_null_size(
- dict_index_get_nth_type(index, i));
+ dict_index_get_nth_type(index,
+ upd_field->field_no));
}
old_len = rec_offs_nth_size(offsets, upd_field->field_no);