summaryrefslogtreecommitdiff
path: root/sql/sql_error.cc
diff options
context:
space:
mode:
authorunknown <pem@mysql.com>2005-10-17 15:07:47 +0200
committerunknown <pem@mysql.com>2005-10-17 15:07:47 +0200
commit7bcbbde34ddcf7e28876e351cc6be1bf894a4d34 (patch)
treed16ca31453be37d53895be07584765b1337a6698 /sql/sql_error.cc
parentea86ef655c07da717c53c7589a1f01fa44ea94ae (diff)
downloadmariadb-git-7bcbbde34ddcf7e28876e351cc6be1bf894a4d34.tar.gz
Additional fix for BUG#7049, after review.
Make sure "select" aborts when finding a SP condition handler beyond the current scope. mysql-test/r/sp.result: Updated test results after fixing error handling in select. sql/mysqld.cc: Make sure "select" aborts when finding a SP condition handler beyond the current scope. sql/protocol.cc: Make sure "select" aborts when finding a SP condition handler beyond the current scope. sql/sp_rcontext.h: Added method for checking if the handler was found in the current context. sql/sql_error.cc: Make sure "select" aborts when finding a SP condition handler beyond the current scope.
Diffstat (limited to 'sql/sql_error.cc')
-rw-r--r--sql/sql_error.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/sql/sql_error.cc b/sql/sql_error.cc
index 2e262569386..191a6e0a1fd 100644
--- a/sql/sql_error.cc
+++ b/sql/sql_error.cc
@@ -144,6 +144,8 @@ MYSQL_ERROR *push_warning(THD *thd, MYSQL_ERROR::enum_warning_level level,
thd->really_abort_on_warning()) ?
MYSQL_ERROR::WARN_LEVEL_ERROR : level))
{
+ if (! thd->spcont->found_handler_here())
+ thd->net.report_error= 1; /* Make "select" abort correctly */
DBUG_RETURN(NULL);
}
query_cache_abort(&thd->net);