mirror of
https://github.com/MariaDB/server.git
synced 2026-04-21 15:55:53 +02:00
Init "saved_expected_errors" at program start, avoids crash where --error is first command
strcmp -> strncmp
This commit is contained in:
parent
4f7097035f
commit
13da57d0f1
1 changed files with 10 additions and 6 deletions
|
|
@ -2544,11 +2544,11 @@ void do_get_errcodes(struct st_command *command)
|
|||
- May contain only digits[0-9] and _uppercase_ letters
|
||||
*/
|
||||
p++; /* Step past the S */
|
||||
if (end - p != SQLSTATE_LENGTH)
|
||||
if ((end - p) != SQLSTATE_LENGTH)
|
||||
die("The sqlstate must be exactly %d chars long", SQLSTATE_LENGTH);
|
||||
|
||||
/* Check sqlstate string validity */
|
||||
while (*p && p != end)
|
||||
while (*p && p < end)
|
||||
{
|
||||
if (my_isdigit(charset_info, *p) || my_isupper(charset_info, *p))
|
||||
*to_ptr++= *p++;
|
||||
|
|
@ -4652,7 +4652,8 @@ void handle_error(struct st_command *command,
|
|||
*/
|
||||
if (err_errno == CR_SERVER_LOST ||
|
||||
err_errno == CR_SERVER_GONE_ERROR)
|
||||
die("require query '%s' failed: %d: %s", command->query, err_errno, err_error);
|
||||
die("require query '%s' failed: %d: %s", command->query,
|
||||
err_errno, err_error);
|
||||
|
||||
/* Abort the run of this test, pass the failed query as reason */
|
||||
abort_not_supported_test("Query '%s' failed, required functionality" \
|
||||
|
|
@ -4669,8 +4670,8 @@ void handle_error(struct st_command *command,
|
|||
if (((command->expected_errors.err[i].type == ERR_ERRNO) &&
|
||||
(command->expected_errors.err[i].code.errnum == err_errno)) ||
|
||||
((command->expected_errors.err[i].type == ERR_SQLSTATE) &&
|
||||
(strcmp(command->expected_errors.err[i].code.sqlstate,
|
||||
err_sqlstate) == 0)))
|
||||
(strncmp(command->expected_errors.err[i].code.sqlstate,
|
||||
err_sqlstate, SQLSTATE_LENGTH) == 0)))
|
||||
{
|
||||
if (!disable_result_log)
|
||||
{
|
||||
|
|
@ -4695,7 +4696,7 @@ void handle_error(struct st_command *command,
|
|||
}
|
||||
|
||||
DBUG_PRINT("info",("i: %d expected_errors: %d", i,
|
||||
command->expected_errors));
|
||||
command->expected_errors.count));
|
||||
|
||||
if (!disable_result_log)
|
||||
{
|
||||
|
|
@ -5423,6 +5424,9 @@ int main(int argc, char **argv)
|
|||
save_file[0]= 0;
|
||||
TMPDIR[0]= 0;
|
||||
|
||||
/* Init expected errors */
|
||||
memset(&saved_expected_errors, 0, sizeof(saved_expected_errors));
|
||||
|
||||
/* Init connections */
|
||||
memset(connections, 0, sizeof(connections));
|
||||
connections_end= connections +
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue