From ef295c31e3d50a99a90beccfb4deb9d9d36ac1e3 Mon Sep 17 00:00:00 2001 From: Monty Date: Wed, 16 May 2018 21:51:46 +0300 Subject: MDEV-11129 CREATE OR REPLACE TABLE t1 AS SELECT spfunc() crashes if spfunc() references t1 Fixed by extending unique_table() with a flag to not allow usage of the replaced table. I also cleaned up find_dup_table() to not use goto next. I also added more comments to the code in find_dup_table() --- sql/sql_parse.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sql/sql_parse.cc') diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc index 87edf93bb4a..1162aa901d1 100644 --- a/sql/sql_parse.cc +++ b/sql/sql_parse.cc @@ -2970,7 +2970,7 @@ case SQLCOM_PREPARE: TABLE_LIST *duplicate; if ((duplicate= unique_table(thd, lex->query_tables, lex->query_tables->next_global, - 0))) + CHECK_DUP_FOR_CREATE))) { update_non_unique_table_error(lex->query_tables, "CREATE", duplicate); -- cgit v1.2.1