summaryrefslogtreecommitdiff
path: root/innobase/row
diff options
context:
space:
mode:
authorunknown <sergefp@mysql.com>2005-01-12 08:39:15 +0300
committerunknown <sergefp@mysql.com>2005-01-12 08:39:15 +0300
commitc8807157ff00f53851039a8a030b411eb1822e75 (patch)
tree9e3f71ab89099c00152098d24e895e64aef99c0f /innobase/row
parent9f62dcfd070361d5f6410ea213c316e71b5ecf50 (diff)
downloadmariadb-git-c8807157ff00f53851039a8a030b411eb1822e75.tar.gz
BUG#5401: post-review fixes
Diffstat (limited to 'innobase/row')
-rw-r--r--innobase/row/row0sel.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/innobase/row/row0sel.c b/innobase/row/row0sel.c
index 148a5ddf043..35f4b298e02 100644
--- a/innobase/row/row0sel.c
+++ b/innobase/row/row0sel.c
@@ -2731,7 +2731,6 @@ row_sel_pop_cached_row_for_mysql(
ulint i;
mysql_row_templ_t* templ;
byte* cached_rec;
- byte null_byte;
ut_ad(prebuilt->n_fetch_cached > 0);
if (prebuilt->keep_other_fields_on_keyread)
@@ -2747,15 +2746,14 @@ row_sel_pop_cached_row_for_mysql(
buf + templ->mysql_col_offset,
cached_rec + templ->mysql_col_offset,
templ->mysql_col_len);
- /* Copy NULL bit of the current field from cached_rec
+ /* Copy NULL bit of the current field from cached_rec
to buf */
if (templ->mysql_null_bit_mask)
{
- null_byte = buf[templ->mysql_null_byte_offset] &
- ~(byte)templ->mysql_null_bit_mask;
- null_byte |= (byte)templ->mysql_null_bit_mask &
- cached_rec[templ->mysql_null_byte_offset];
- buf[templ->mysql_null_byte_offset] = null_byte;
+ buf[templ->mysql_null_byte_offset] ^=
+ (buf[templ->mysql_null_byte_offset] ^
+ cached_rec[templ->mysql_null_byte_offset]) &
+ (byte)templ->mysql_null_bit_mask;
}
}
}