Loading sql/sp_head.cc +11 −11 Original line number Diff line number Diff line Loading @@ -387,19 +387,19 @@ sp_name_current_db_new(THD *thd, LEX_STRING name) } /* * Check that the name 'ident' is ok. It's assumed to be an 'ident' * from the parser, so we only have to check length and trailing spaces. * The former is a standard requirement (and 'show status' assumes a * non-empty name), the latter is a mysql:ism as trailing spaces are * removed by get_field(). * * RETURN * TRUE - bad name * FALSE - name is ok Check that the name 'ident' is ok. It's assumed to be an 'ident' from the parser, so we only have to check length and trailing spaces. The former is a standard requirement (and 'show status' assumes a non-empty name), the latter is a mysql:ism as trailing spaces are removed by get_field(). RETURN TRUE - bad name FALSE - name is ok */ bool sp_name_check(LEX_STRING ident) check_routine_name(LEX_STRING ident) { return (!ident.str || !ident.str[0] || ident.str[ident.length-1] == ' '); } Loading sql/sp_head.h +1 −1 Original line number Diff line number Diff line Loading @@ -104,7 +104,7 @@ sp_name * sp_name_current_db_new(THD *thd, LEX_STRING name); bool sp_name_check(LEX_STRING name); check_routine_name(LEX_STRING name); class sp_head :private Query_arena { Loading sql/sql_yacc.yy +2 −2 Original line number Diff line number Diff line Loading @@ -1293,7 +1293,7 @@ sp_name: my_error(ER_WRONG_DB_NAME, MYF(0), $1.str); YYABORT; } if (sp_name_check($3)) if (check_routine_name($3)) { my_error(ER_SP_WRONG_NAME, MYF(0), $3.str); YYABORT; Loading @@ -1303,7 +1303,7 @@ sp_name: } | ident { if (sp_name_check($1)) if (check_routine_name($1)) { my_error(ER_SP_WRONG_NAME, MYF(0), $1.str); YYABORT; Loading Loading
sql/sp_head.cc +11 −11 Original line number Diff line number Diff line Loading @@ -387,19 +387,19 @@ sp_name_current_db_new(THD *thd, LEX_STRING name) } /* * Check that the name 'ident' is ok. It's assumed to be an 'ident' * from the parser, so we only have to check length and trailing spaces. * The former is a standard requirement (and 'show status' assumes a * non-empty name), the latter is a mysql:ism as trailing spaces are * removed by get_field(). * * RETURN * TRUE - bad name * FALSE - name is ok Check that the name 'ident' is ok. It's assumed to be an 'ident' from the parser, so we only have to check length and trailing spaces. The former is a standard requirement (and 'show status' assumes a non-empty name), the latter is a mysql:ism as trailing spaces are removed by get_field(). RETURN TRUE - bad name FALSE - name is ok */ bool sp_name_check(LEX_STRING ident) check_routine_name(LEX_STRING ident) { return (!ident.str || !ident.str[0] || ident.str[ident.length-1] == ' '); } Loading
sql/sp_head.h +1 −1 Original line number Diff line number Diff line Loading @@ -104,7 +104,7 @@ sp_name * sp_name_current_db_new(THD *thd, LEX_STRING name); bool sp_name_check(LEX_STRING name); check_routine_name(LEX_STRING name); class sp_head :private Query_arena { Loading
sql/sql_yacc.yy +2 −2 Original line number Diff line number Diff line Loading @@ -1293,7 +1293,7 @@ sp_name: my_error(ER_WRONG_DB_NAME, MYF(0), $1.str); YYABORT; } if (sp_name_check($3)) if (check_routine_name($3)) { my_error(ER_SP_WRONG_NAME, MYF(0), $3.str); YYABORT; Loading @@ -1303,7 +1303,7 @@ sp_name: } | ident { if (sp_name_check($1)) if (check_routine_name($1)) { my_error(ER_SP_WRONG_NAME, MYF(0), $1.str); YYABORT; Loading