1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Bug#38486 Crash when using cursor protocol

Server side cursors were not initialized properly and this caused a reference to
uninitialized memory.
This commit is contained in:
Kristofer Pettersson
2008-08-11 11:40:54 +02:00
parent 7b244002a3
commit 9fc39adfda
2 changed files with 34 additions and 1 deletions

View File

@ -16189,6 +16189,35 @@ static void test_bug32265()
DBUG_VOID_RETURN;
}
/**
Bug#38486 Crash when using cursor protocol
*/
static void test_bug38486(void)
{
myheader("test_bug38486");
MYSQL_STMT *stmt;
stmt= mysql_stmt_init(mysql);
unsigned long type= CURSOR_TYPE_READ_ONLY;
mysql_stmt_attr_set(stmt, STMT_ATTR_CURSOR_TYPE, (void*)&type);
const char *sql= "CREATE TABLE t1 (a INT)";
mysql_stmt_prepare(stmt,sql,strlen(sql));
mysql_stmt_execute(stmt);
mysql_stmt_close(stmt);
stmt= mysql_stmt_init(mysql);
mysql_stmt_attr_set(stmt, STMT_ATTR_CURSOR_TYPE, (void*)&type);
const char *sql2= "INSERT INTO t1 VALUES (1)";
mysql_stmt_prepare(stmt,sql2,strlen(sql2));
mysql_stmt_execute(stmt);
mysql_stmt_close(stmt);
}
/*
Read and parse arguments and MySQL options from my.cnf
*/
@ -16483,6 +16512,7 @@ static struct my_tests_st my_tests[]= {
{ "test_bug29306", test_bug29306 },
{ "test_bug31669", test_bug31669 },
{ "test_bug32265", test_bug32265 },
{ "test_bug38486", test_bug38486 },
{ 0, 0 }
};