diff options
author | monty@mashka.mysql.fi <> | 2002-12-05 19:38:42 +0200 |
---|---|---|
committer | monty@mashka.mysql.fi <> | 2002-12-05 19:38:42 +0200 |
commit | 859b68847666823baa328c5c7f3da96787807bb3 (patch) | |
tree | 56f9dc35fe3c9e6c4f341e577ff3db68855d9e81 /sql/sql_select.h | |
parent | 564487d7c00098e8a37c8e675197414667685452 (diff) | |
parent | 496a0e1630f9dc4047fb5244cb87ee5ca03b409e (diff) | |
download | mariadb-git-859b68847666823baa328c5c7f3da96787807bb3.tar.gz |
Merge with 4.0.6
Diffstat (limited to 'sql/sql_select.h')
-rw-r--r-- | sql/sql_select.h | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/sql/sql_select.h b/sql/sql_select.h index 3b89c1ce0d3..31693628be5 100644 --- a/sql/sql_select.h +++ b/sql/sql_select.h @@ -115,7 +115,8 @@ typedef struct st_position { /* Used in find_best */ /* Param to create temporary tables when doing SELECT:s */ -class TMP_TABLE_PARAM { +class TMP_TABLE_PARAM :public Sql_alloc +{ public: List<Item> copy_funcs; List_iterator_fast<Item> copy_funcs_it; @@ -321,12 +322,12 @@ class store_key_field: public store_key copy_field.set(to_field,from_field,0); } } - bool copy() - { - copy_field.do_copy(©_field); - return err != 0; - } - const char *name() const { return field_name; } + bool copy() + { + copy_field.do_copy(©_field); + return err != 0; + } + const char *name() const { return field_name; } }; @@ -343,8 +344,7 @@ public: {} bool copy() { - (void) item->save_in_field(to_field); - return err != 0; + return item->save_in_field(to_field, 1) || err != 0; } const char *name() const { return "func"; } }; @@ -367,7 +367,8 @@ public: if (!inited) { inited=1; - (void)item->save_in_field(to_field); + if (item->save_in_field(to_field, 1)) + err= 1; } return err != 0; } @@ -375,3 +376,4 @@ public: }; bool cp_buffer_from_ref(TABLE_REF *ref); +bool error_if_full_join(JOIN *join); |