diff options
author | dlenev@mysql.com <> | 2004-11-22 13:06:31 +0300 |
---|---|---|
committer | dlenev@mysql.com <> | 2004-11-22 13:06:31 +0300 |
commit | 64cd633f43bec240df9181f72e63e11ecbf11032 (patch) | |
tree | 4c8f585f4cd208e68c7c3ddd4274ab4141ef3bee /sql/set_var.cc | |
parent | 3082312fa80408b9b8baaece27bfa162a40e09ba (diff) | |
parent | c37977c87d1d26a81ea44275d853e636532e2a16 (diff) | |
download | mariadb-git-64cd633f43bec240df9181f72e63e11ecbf11032.tar.gz |
Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg6462
Diffstat (limited to 'sql/set_var.cc')
-rw-r--r-- | sql/set_var.cc | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/sql/set_var.cc b/sql/set_var.cc index f1973b53e49..2031ac15412 100644 --- a/sql/set_var.cc +++ b/sql/set_var.cc @@ -2733,13 +2733,18 @@ int sql_set_variables(THD *thd, List<set_var_base> *var_list) while ((var=it++)) { if ((error=var->check(thd))) - DBUG_RETURN(error); + goto err; } - if (thd->net.report_error) - DBUG_RETURN(1); - it.rewind(); - while ((var=it++)) - error|= var->update(thd); // Returns 0, -1 or 1 + if (!thd->net.report_error) + { + it.rewind(); + while ((var= it++)) + error|= var->update(thd); // Returns 0, -1 or 1 + } + else + error= 1; +err: + free_underlaid_joins(thd, &thd->lex->select_lex); DBUG_RETURN(error); } |