summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libmysql/libmysql.c7
-rw-r--r--sql/ha_blackhole.cc3
-rw-r--r--sql/share/danish/errmsg.txt2
-rw-r--r--sql/share/serbian/errmsg.txt2
-rw-r--r--sql/sql_base.cc2
5 files changed, 10 insertions, 6 deletions
diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c
index ff90cfb6007..4d92db26406 100644
--- a/libmysql/libmysql.c
+++ b/libmysql/libmysql.c
@@ -3947,9 +3947,12 @@ my_bool STDCALL mysql_stmt_bind_result(MYSQL_STMT *stmt, MYSQL_BIND *bind)
/*
We only need to check that stmt->field_count - if it is not null
stmt->bind was initialized in mysql_stmt_prepare
- */
+ stmt->bind overlaps with bind if mysql_stmt_bind_param
+ is called from mysql_stmt_store_result.
+ */
- memcpy((char*) stmt->bind, (char*) bind, sizeof(MYSQL_BIND) * bind_count);
+ if (stmt->bind != bind)
+ memcpy((char*) stmt->bind, (char*) bind, sizeof(MYSQL_BIND) * bind_count);
for (param= stmt->bind, end= param + bind_count, field= stmt->fields ;
param < end ;
diff --git a/sql/ha_blackhole.cc b/sql/ha_blackhole.cc
index 7c6e7cb56b6..c9c94b3a9d7 100644
--- a/sql/ha_blackhole.cc
+++ b/sql/ha_blackhole.cc
@@ -129,8 +129,9 @@ THR_LOCK_DATA **ha_blackhole::store_lock(THD *thd,
THR_LOCK_DATA **to,
enum thr_lock_type lock_type)
{
+ if (lock_type != TL_IGNORE && lock.type == TL_UNLOCK)
+ lock.type=lock_type;
*to++= &lock;
-
return to;
}
diff --git a/sql/share/danish/errmsg.txt b/sql/share/danish/errmsg.txt
index 384625f7112..4983d39714a 100644
--- a/sql/share/danish/errmsg.txt
+++ b/sql/share/danish/errmsg.txt
@@ -262,7 +262,7 @@ character-set=latin1
"Key reference and table reference don't match",
"Operand should contain %d column(s)",
"Subquery returns more than 1 row",
-"Unknown prepared statement handler (%ld) given to %s",
+"Unknown prepared statement handler (%.*s) given to %s",
"Help database is corrupt or does not exist",
"Cyclic reference on subqueries",
"Converting column '%s' from %s to %s",
diff --git a/sql/share/serbian/errmsg.txt b/sql/share/serbian/errmsg.txt
index accf1926abb..adda7d7cf53 100644
--- a/sql/share/serbian/errmsg.txt
+++ b/sql/share/serbian/errmsg.txt
@@ -252,7 +252,7 @@ character-set=cp1250
"Key reference and table reference don't match",
"Operand should contain %d column(s)",
"Subquery returns more than 1 row",
-"Unknown prepared statement handler (%ld) given to %s",
+"Unknown prepared statement handler (%.*s) given to %s",
"Help database is corrupt or does not exist",
"Cyclic reference on subqueries",
"Converting column '%s' from %s to %s",
diff --git a/sql/sql_base.cc b/sql/sql_base.cc
index c580842ce06..e86362c857b 100644
--- a/sql/sql_base.cc
+++ b/sql/sql_base.cc
@@ -2522,7 +2522,7 @@ bool get_key_map_from_key_list(key_map *map, TABLE *table,
if ((pos= find_type(&table->keynames, name->ptr(), name->length(), 1)) <=
0)
{
- my_error(ER_KEY_COLUMN_DOES_NOT_EXITS, MYF(0), name->c_ptr(),
+ my_error(ER_KEY_COLUMN_DOES_NOT_EXITS, MYF(0), name->c_ptr_safe(),
table->real_name);
map->set_all();
return 1;