diff options
author | Kristofer Pettersson <kristofer.pettersson@oracle.com> | 2011-03-14 17:00:50 +0100 |
---|---|---|
committer | Kristofer Pettersson <kristofer.pettersson@oracle.com> | 2011-03-14 17:00:50 +0100 |
commit | 4f786b3efebedaccabba2de90f685c1e019cc02b (patch) | |
tree | 10647383a0b7fbd274e67dc6ad2a90426b96554a /sql | |
parent | abd2e20b04d7228a6c13a1bd77e44b0b919b4ff4 (diff) | |
parent | 4185869e03d578263f5222f395a3c96ddf8ae543 (diff) | |
download | mariadb-git-4f786b3efebedaccabba2de90f685c1e019cc02b.tar.gz |
automerge
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_base.cc | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/sql/sql_base.cc b/sql/sql_base.cc index 7c020515f87..f37f800d091 100644 --- a/sql/sql_base.cc +++ b/sql/sql_base.cc @@ -7594,9 +7594,10 @@ static bool setup_natural_join_row_types(THD *thd, List<TABLE_LIST> *from_clause, Name_resolution_context *context) { + DBUG_ENTER("setup_natural_join_row_types"); thd->where= "from clause"; if (from_clause->elements == 0) - return FALSE; /* We come here in the case of UNIONs. */ + DBUG_RETURN(false); /* We come here in the case of UNIONs. */ List_iterator_fast<TABLE_LIST> table_ref_it(*from_clause); TABLE_LIST *table_ref; /* Current table reference. */ @@ -7604,10 +7605,6 @@ static bool setup_natural_join_row_types(THD *thd, TABLE_LIST *left_neighbor; /* Table reference to the right of the current. */ TABLE_LIST *right_neighbor= NULL; - bool save_first_natural_join_processing= - context->select_lex->first_natural_join_processing; - - context->select_lex->first_natural_join_processing= FALSE; /* Note that tables in the list are in reversed order */ for (left_neighbor= table_ref_it++; left_neighbor ; ) @@ -7619,12 +7616,11 @@ static bool setup_natural_join_row_types(THD *thd, 1) for stored procedures, 2) for multitable update after lock failure and table reopening. */ - if (save_first_natural_join_processing) + if (context->select_lex->first_natural_join_processing) { - context->select_lex->first_natural_join_processing= FALSE; if (store_top_level_join_columns(thd, table_ref, left_neighbor, right_neighbor)) - return TRUE; + DBUG_RETURN(true); if (left_neighbor) { TABLE_LIST *first_leaf_on_the_right; @@ -7644,8 +7640,9 @@ static bool setup_natural_join_row_types(THD *thd, DBUG_ASSERT(right_neighbor); context->first_name_resolution_table= right_neighbor->first_leaf_for_name_resolution(); + context->select_lex->first_natural_join_processing= false; - return FALSE; + DBUG_RETURN (false); } |