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.
This commit is contained in:
unknown 2005-10-17 15:07:47 +02:00
commit c8a2ff6f53
5 changed files with 15 additions and 2 deletions

View file

@ -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);