summaryrefslogtreecommitdiff
path: root/sql/field.h
diff options
context:
space:
mode:
authorunknown <monty@mashka.mysql.fi>2002-08-08 03:29:36 +0300
committerunknown <monty@mashka.mysql.fi>2002-08-08 03:29:36 +0300
commita6b15fdd7682bffc2e197ac50e21332bb9bcf297 (patch)
treeda5d29e4a08217e2773b16c5aef05ab734c760e4 /sql/field.h
parent93f5a0616ab15113844fa211a26c44182af8018c (diff)
parentf01f49916b7a0ea6eaf9f0e4e1dfad911584f8a2 (diff)
downloadmariadb-git-a6b15fdd7682bffc2e197ac50e21332bb9bcf297.tar.gz
merge
BitKeeper/etc/logging_ok: auto-union include/my_sys.h: Auto merged innobase/include/dyn0dyn.h: Auto merged innobase/include/dyn0dyn.ic: Auto merged myisam/mi_check.c: Auto merged sql/ha_berkeley.h: Auto merged sql/ha_innodb.h: Auto merged sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/item_timefunc.h: Auto merged sql/lex.h: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/set_var.cc: Auto merged sql/sql_cache.cc: Auto merged sql/sql_delete.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_update.cc: Auto merged sql/sql_yacc.yy: Auto merged
Diffstat (limited to 'sql/field.h')
-rw-r--r--sql/field.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/sql/field.h b/sql/field.h
index 785f55657ad..956c77e5024 100644
--- a/sql/field.h
+++ b/sql/field.h
@@ -73,6 +73,9 @@ public:
virtual void set_default()
{
memcpy(ptr, ptr + table->rec_buff_length, pack_length());
+ if (null_ptr)
+ *null_ptr= ((*null_ptr & (uchar) ~null_bit) |
+ null_ptr[table->rec_buff_length] & null_bit);
}
virtual bool binary() const { return 1; }
virtual bool zero_pack() const { return 1; }
@@ -93,12 +96,12 @@ public:
virtual int key_cmp(const byte *str, uint length)
{ return cmp(ptr,(char*) str); }
virtual uint decimals() const { return 0; }
- virtual void sql_type(String &str) const =0;
/*
Caller beware: sql_type can change str.Ptr, so check
ptr() to see if it changed if you are using your own buffer
in str and restore it with set() if needed
*/
+ virtual void sql_type(String &str) const =0;
virtual uint size_of() const =0; // For new field
inline bool is_null(uint row_offset=0)
{ return null_ptr ? (null_ptr[row_offset] & null_bit ? 1 : 0) : table->null_row; }