diff --git a/mysql-test/r/view.result b/mysql-test/r/view.result index 4cb3db2e4aa..a40d776000d 100644 --- a/mysql-test/r/view.result +++ b/mysql-test/r/view.result @@ -2205,6 +2205,11 @@ select * from (select f1 as f2 from v1) v where v.f2='a'; f2 drop view v1; drop table t1; +create view v1 as SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); +select * from v1; +CONVERT_TZ('2004-01-01 12:00:00','GMT','MET') +NULL +drop view v1; CREATE TABLE t1 (date DATE NOT NULL); INSERT INTO t1 VALUES ('2005-09-06'); CREATE VIEW v1 AS SELECT DAYNAME(date) FROM t1; diff --git a/mysql-test/t/view.test b/mysql-test/t/view.test index 0e3a7b8aeac..59ec47821f6 100644 --- a/mysql-test/t/view.test +++ b/mysql-test/t/view.test @@ -2087,6 +2087,13 @@ select * from (select f1 as f2 from v1) v where v.f2='a'; drop view v1; drop table t1; +# +# Bug #11416 Server crash if using a view that uses function convert_tz +# +create view v1 as SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); +select * from v1; +drop view v1; + # # Bugs #12963, #13000: wrong creation of VIEW with DAYNAME, DAYOFWEEK, and WEEKDAY # diff --git a/sql/sql_view.cc b/sql/sql_view.cc index 5155e605ce0..c26f9cc4d71 100644 --- a/sql/sql_view.cc +++ b/sql/sql_view.cc @@ -1069,6 +1069,8 @@ ok: ok2: if (arena) thd->restore_active_arena(arena, &backup); + if (!old_lex->time_zone_tables_used && thd->lex->time_zone_tables_used) + old_lex->time_zone_tables_used= thd->lex->time_zone_tables_used; thd->lex= old_lex; DBUG_RETURN(0);