summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorunknown <gshchepa/uchum@host.loc>2008-05-18 14:27:44 +0500
committerunknown <gshchepa/uchum@host.loc>2008-05-18 14:27:44 +0500
commitc5865cfdb646a2f72ef0c394aec036016f592441 (patch)
tree5b858cc7cd92c5992d97fe4e3b58dc0eab964940 /sql
parent314e6e2551a71d2f7e88941fcba782af2fe2ee3b (diff)
parent8bc987ab5b5ba74a4b8879701a3313043a574f2e (diff)
downloadmariadb-git-c5865cfdb646a2f72ef0c394aec036016f592441.tar.gz
Merge host.loc:/work/bk/5.0-bugteam
into host.loc:/work/bk/5.1-bugteam sql/sql_update.cc: Auto merged
Diffstat (limited to 'sql')
-rw-r--r--sql/sql_update.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/sql/sql_update.cc b/sql/sql_update.cc
index 23ad5ce9385..9d6a2b1b8c8 100644
--- a/sql/sql_update.cc
+++ b/sql/sql_update.cc
@@ -1669,6 +1669,12 @@ bool multi_update::send_data(List<Item> &not_used_values)
tbl->file->position(tbl->record[0]);
memcpy((char*) tmp_table->field[field_num]->ptr,
(char*) tbl->file->ref, tbl->file->ref_length);
+ /*
+ For outer joins a rowid field may have no NOT_NULL_FLAG,
+ so we have to reset NULL bit for this field.
+ (set_notnull() resets NULL bit only if available).
+ */
+ tmp_table->field[field_num]->set_notnull();
field_num++;
} while ((tbl= tbl_it++));