summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
Diffstat (limited to 'sql')
-rw-r--r--sql/sql_handler.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/sql/sql_handler.cc b/sql/sql_handler.cc
index f7effdc67e6..0c6b5599519 100644
--- a/sql/sql_handler.cc
+++ b/sql/sql_handler.cc
@@ -130,7 +130,11 @@ int mysql_ha_read(THD *thd, TABLE_LIST *tables,
select_limit+=offset_limit;
send_fields(thd,list,1);
+ HANDLER_TABLES_HACK(thd);
MYSQL_LOCK *lock=mysql_lock_tables(thd,&tables->table,1);
+ HANDLER_TABLES_HACK(thd);
+ if (!lock)
+ goto err0; // mysql_lock_tables() printed error message already
for (uint num_rows=0; num_rows < select_limit; )
{
@@ -238,6 +242,7 @@ ok:
return 0;
err:
mysql_unlock_tables(thd,lock);
+err0:
return -1;
}