summaryrefslogtreecommitdiff
path: root/sql/sql_parse.cc
diff options
context:
space:
mode:
authorunknown <msvensson@neptunus.(none)>2007-02-06 14:45:08 +0100
committerunknown <msvensson@neptunus.(none)>2007-02-06 14:45:08 +0100
commit56820e1cdc0185617386bd06f0e54714ecf004d8 (patch)
tree431e053716f1d6cf66bf0eaeec8d5024b1b1b24e /sql/sql_parse.cc
parentcbace0b7b46b5515ee92ee5313d4a98b6e0232d9 (diff)
parentd3c1511a36f0c82f2aa707d74068d76fe84060bc (diff)
downloadmariadb-git-56820e1cdc0185617386bd06f0e54714ecf004d8.tar.gz
Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint Makefile.am: Auto merged configure.in: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysys/default.c: Auto merged sql/item.cc: Auto merged sql/item_cmpfunc.cc: Auto merged sql/item_cmpfunc.h: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/select.result: Manual merge mysql-test/t/select.test: Manual merge
Diffstat (limited to 'sql/sql_parse.cc')
-rw-r--r--sql/sql_parse.cc13
1 files changed, 6 insertions, 7 deletions
diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc
index fe511957bec..affa6e130dc 100644
--- a/sql/sql_parse.cc
+++ b/sql/sql_parse.cc
@@ -6444,11 +6444,8 @@ TABLE_LIST *st_select_lex::nest_last_join(THD *thd)
If this is a JOIN ... USING, move the list of joined fields to the
table reference that describes the join.
*/
- if (table->join_using_fields)
- {
- ptr->join_using_fields= table->join_using_fields;
- table->join_using_fields= NULL;
- }
+ if (prev_join_using)
+ ptr->join_using_fields= prev_join_using;
}
}
join_list->push_front(ptr);
@@ -6704,6 +6701,7 @@ void add_join_on(TABLE_LIST *b, Item *expr)
a Left join argument
b Right join argument
using_fields Field names from USING clause
+ lex The current st_select_lex
IMPLEMENTATION
This function marks that table b should be joined with a either via
@@ -6732,10 +6730,11 @@ void add_join_on(TABLE_LIST *b, Item *expr)
None
*/
-void add_join_natural(TABLE_LIST *a, TABLE_LIST *b, List<String> *using_fields)
+void add_join_natural(TABLE_LIST *a, TABLE_LIST *b, List<String> *using_fields,
+ SELECT_LEX *lex)
{
b->natural_join= a;
- b->join_using_fields= using_fields;
+ lex->prev_join_using= using_fields;
}