diff options
author | pem@mysql.com <> | 2005-12-06 14:25:12 +0100 |
---|---|---|
committer | pem@mysql.com <> | 2005-12-06 14:25:12 +0100 |
commit | c6fc5d35ccfbfe2319d962e20d51b4b1db4a92ea (patch) | |
tree | 9f2d5bd1fe2755d671e93a72ba09a3d33e7266f8 /sql/sp.cc | |
parent | a0ed1d5aba66f9ca677877a42f2d72e318906486 (diff) | |
download | mariadb-git-c6fc5d35ccfbfe2319d962e20d51b4b1db4a92ea.tar.gz |
Final review fix of #14233: Crash after tampering with the mysql.proc table.
Changed variable type and added comment in sp.c.
Diffstat (limited to 'sql/sp.cc')
-rw-r--r-- | sql/sp.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sql/sp.cc b/sql/sp.cc index 7dc872f6225..3e5a3cb94f1 100644 --- a/sql/sp.cc +++ b/sql/sp.cc @@ -1462,7 +1462,7 @@ sp_cache_routines_and_add_tables_aux(THD *thd, LEX *lex, bool first_no_prelock, bool *tabs_changed) { int ret= 0; - int tabschnd= 0; /* Set if tables changed */ + bool tabschnd= 0; /* Set if tables changed */ bool first= TRUE; DBUG_ENTER("sp_cache_routines_and_add_tables_aux"); @@ -1512,6 +1512,11 @@ sp_cache_routines_and_add_tables_aux(THD *thd, LEX *lex, */ if (ret == SP_PARSE_ERROR) thd->clear_error(); + /* + If we cleared the parse error, or when db_find_routine() flagged + an error with it's return value without calling my_error(), we + set the generic "mysql.proc table corrupt" error here. + */ if (!thd->net.report_error) { char n[NAME_LEN*2+2]; |