summaryrefslogtreecommitdiff
path: root/sql/sql_db.cc
diff options
context:
space:
mode:
authorAndrei Elkin <aelkin@mysql.com>2009-11-10 20:45:15 +0200
committerAndrei Elkin <aelkin@mysql.com>2009-11-10 20:45:15 +0200
commit7eb789a723582a503e6c7b18afee5b92d39dbbd5 (patch)
tree4673f5dde3aac3f1173eb33cbd96a67269d48499 /sql/sql_db.cc
parent19c380aaff1f1f3c0d21ac0c18904c21d7bdce76 (diff)
parent3c1e1f6d6c7caa8916a03ac9594ff950e6b380e3 (diff)
downloadmariadb-git-7eb789a723582a503e6c7b18afee5b92d39dbbd5.tar.gz
merging 5.1 main -> 5.1-rep+2 -> 5.1-rep+3; binlog_unsafe , rpl_mysql_upgrade fail and are under treatment
Diffstat (limited to 'sql/sql_db.cc')
-rw-r--r--sql/sql_db.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/sql/sql_db.cc b/sql/sql_db.cc
index 770f68f0282..dce867eb589 100644
--- a/sql/sql_db.cc
+++ b/sql/sql_db.cc
@@ -907,6 +907,9 @@ bool mysql_rm_db(THD *thd,char *db,bool if_exists, bool silent)
remove_db_from_cache(db);
pthread_mutex_unlock(&LOCK_open);
+ Drop_table_error_handler err_handler(thd->get_internal_handler());
+ thd->push_internal_handler(&err_handler);
+
error= -1;
/*
We temporarily disable the binary log while dropping the objects
@@ -939,6 +942,7 @@ bool mysql_rm_db(THD *thd,char *db,bool if_exists, bool silent)
error = 0;
reenable_binlog(thd);
}
+ thd->pop_internal_handler();
}
if (!silent && deleted>=0)
{
@@ -1446,11 +1450,11 @@ cmp_db_names(const char *db1_name,
{
return
/* db1 is NULL and db2 is NULL */
- !db1_name && !db2_name ||
+ (!db1_name && !db2_name) ||
/* db1 is not-NULL, db2 is not-NULL, db1 == db2. */
- db1_name && db2_name &&
- my_strcasecmp(system_charset_info, db1_name, db2_name) == 0;
+ (db1_name && db2_name &&
+ my_strcasecmp(system_charset_info, db1_name, db2_name) == 0);
}