summaryrefslogtreecommitdiff
path: root/sql/sql_trigger.cc
diff options
context:
space:
mode:
authorKonstantin Osipov <kostja@sun.com>2010-06-17 17:31:51 +0400
committerKonstantin Osipov <kostja@sun.com>2010-06-17 17:31:51 +0400
commitcc6dabba377bd05bb9a6a9ffaa985bbe5e38bcc1 (patch)
tree9413ba739bc0dbf1e647293756a3503f17dcde07 /sql/sql_trigger.cc
parent91a7b147056a228804f81726127035aa305702ff (diff)
parent45c7bf3c54fa852b312773688fdce15bffe49abf (diff)
downloadmariadb-git-cc6dabba377bd05bb9a6a9ffaa985bbe5e38bcc1.tar.gz
Merge trunk-bugfixing -> trunk-runtime
Diffstat (limited to 'sql/sql_trigger.cc')
-rw-r--r--sql/sql_trigger.cc13
1 files changed, 6 insertions, 7 deletions
diff --git a/sql/sql_trigger.cc b/sql/sql_trigger.cc
index e9330574b34..2f084c369b6 100644
--- a/sql/sql_trigger.cc
+++ b/sql/sql_trigger.cc
@@ -681,7 +681,7 @@ bool Table_triggers_list::create_trigger(THD *thd, TABLE_LIST *tables,
*/
old_field= new_field= table->field;
- for (trg_field= (Item_trigger_field *)(lex->trg_table_fields.first);
+ for (trg_field= lex->trg_table_fields.first;
trg_field; trg_field= trg_field->next_trg_field)
{
/*
@@ -1326,9 +1326,9 @@ bool Table_triggers_list::check_n_load(THD *thd, const char *db,
thd->variables.sql_mode= (ulong)*trg_sql_mode;
- Parser_state parser_state(thd,
- trg_create_str->str,
- trg_create_str->length);
+ Parser_state parser_state;
+ if (parser_state.init(thd, trg_create_str->str, trg_create_str->length))
+ goto err_with_lex_cleanup;
Trigger_creation_ctx *creation_ctx=
Trigger_creation_ctx::create(thd,
@@ -1442,7 +1442,7 @@ bool Table_triggers_list::check_n_load(THD *thd, const char *db,
*/
triggers->trigger_fields[lex.trg_chistics.event]
[lex.trg_chistics.action_time]=
- (Item_trigger_field *)(lex.trg_table_fields.first);
+ lex.trg_table_fields.first;
/*
Also let us bind these objects to Field objects in table being
opened.
@@ -1452,8 +1452,7 @@ bool Table_triggers_list::check_n_load(THD *thd, const char *db,
SELECT)...
Anyway some things can be checked only during trigger execution.
*/
- for (Item_trigger_field *trg_field=
- (Item_trigger_field *)(lex.trg_table_fields.first);
+ for (Item_trigger_field *trg_field= lex.trg_table_fields.first;
trg_field;
trg_field= trg_field->next_trg_field)
{