summaryrefslogtreecommitdiff
path: root/sql/sql_statistics.cc
diff options
context:
space:
mode:
authorVarun Gupta <varunraiko1803@gmail.com>2018-07-11 02:28:42 +0530
committerVarun Gupta <varunraiko1803@gmail.com>2018-07-11 15:22:04 +0530
commitad9d1e8c3f5a8e1b3e222921e825247aa47c4d23 (patch)
tree78db9992ab1cfd953aa320a777ee05ea2bd9d0f2 /sql/sql_statistics.cc
parenta2c0376e08d80d7b7dad8713d1df334b2b81eff9 (diff)
downloadmariadb-git-ad9d1e8c3f5a8e1b3e222921e825247aa47c4d23.tar.gz
MDEV-16552: [10.0] ASAN global-buffer-overflow in is_stat_table / statistics_for_tables_is_needed
Backport the fix f214d365121 to 10.0 Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Apr 17 00:44:34 2018 +0200 ASAN error in is_stat_table() don't memcmp beyond the first argument's end Also: use my_strcasecmp(table_alias_charset), like elsewhere, not memcmp
Diffstat (limited to 'sql/sql_statistics.cc')
-rw-r--r--sql/sql_statistics.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/sql_statistics.cc b/sql/sql_statistics.cc
index 1febc02b903..be4547a69df 100644
--- a/sql/sql_statistics.cc
+++ b/sql/sql_statistics.cc
@@ -3858,11 +3858,11 @@ bool is_stat_table(const char *db, const char *table)
{
DBUG_ASSERT(db && table);
- if (!memcmp(db, stat_tables_db_name.str, stat_tables_db_name.length))
+ if (!my_strcasecmp(table_alias_charset, db, stat_tables_db_name.str))
{
for (uint i= 0; i < STATISTICS_TABLES; i ++)
{
- if (!memcmp(table, stat_table_name[i].str, stat_table_name[i].length))
+ if (!my_strcasecmp(table_alias_charset, table, stat_table_name[i].str))
return true;
}
}