diff options
-rw-r--r-- | mg_db.c | 3 | ||||
-rw-r--r-- | mg_db_gd_mysql.c | 2 | ||||
-rw-r--r-- | mg_db_gd_pg.c | 2 | ||||
-rw-r--r-- | mg_db_gd_sqlite.c | 6 |
4 files changed, 4 insertions, 9 deletions
@@ -1510,7 +1510,10 @@ bool mgKeyGdFolder::Enabled(mgDb *db) { if (m_enabled<0) + { + if (!db->Connect()) return false; m_enabled = db->FieldExists("tracks", m_field); + } return (m_enabled==1); } diff --git a/mg_db_gd_mysql.c b/mg_db_gd_mysql.c index 8acda12..5c4dc46 100644 --- a/mg_db_gd_mysql.c +++ b/mg_db_gd_mysql.c @@ -632,8 +632,6 @@ mgDbGd::RemoveFromCollection (const string Name, const vector<mgItem*>&items, mg bool mgDbGd::FieldExists(string table, string field) { - if (!Connect()) - return false; char *b; asprintf(&b,"DESCRIBE %s %s",table.c_str(),field.c_str()); mgQuery q(m_db,b); diff --git a/mg_db_gd_pg.c b/mg_db_gd_pg.c index d17282d..05953d3 100644 --- a/mg_db_gd_pg.c +++ b/mg_db_gd_pg.c @@ -322,8 +322,6 @@ mgDbGd::NeedGenre2() bool mgDbGd::FieldExists(string table, string field) { - if (!Connect()) - return false; char *b; asprintf(&b,"SELECT COUNT(*) FROM information_schema.columns WHERE table_name='album' AND column_name='%s'",field.c_str()); bool result = exec_count(b)==1; diff --git a/mg_db_gd_sqlite.c b/mg_db_gd_sqlite.c index c62c737..d5a6be1 100644 --- a/mg_db_gd_sqlite.c +++ b/mg_db_gd_sqlite.c @@ -325,9 +325,7 @@ mgDbGd::ConnectDatabase () mgWarning("Cannot define decade:%d/%s",rc,sqlite3_errmsg); return false; } - if (!FieldExists("tracks","id")) - return false; - return true; + return FieldExists("tracks","id"); } bool @@ -342,8 +340,6 @@ mgDbGd::NeedGenre2() bool mgDbGd::FieldExists(string table, string field) { - if (!Connect()) - return false; char *b; asprintf(&b,"SELECT %s FROM %s LIMIT 1",field.c_str(),table.c_str()); mgQuery q(m_db,b,mgQuerySilent); |