diff options
author | Uwe Klotz <uwe_klotz@web.de> | 2017-06-06 23:53:11 +0200 |
---|---|---|
committer | Uwe Klotz <uwe_klotz@web.de> | 2017-06-12 07:30:17 +0200 |
commit | ef3f61a6bb51f9aec5169638b82b59fd6a365b50 (patch) | |
tree | e53c4379168f8ab93f1b9383ea783eb57aeb4799 /src/library/library.cpp | |
parent | b81976f191edc09accf9fc1fda70233af4845d4a (diff) |
Explicitly provide database connection for schema init/upgrade
Diffstat (limited to 'src/library/library.cpp')
-rw-r--r-- | src/library/library.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/library/library.cpp b/src/library/library.cpp index ba171b99a8..be734487ef 100644 --- a/src/library/library.cpp +++ b/src/library/library.cpp @@ -62,13 +62,23 @@ Library::Library(QObject* parent, UserSettingsPointer pConfig, m_pLibraryControl(new LibraryControl(this)), m_pRecordingManager(pRecordingManager), m_scanner(m_pTrackCollection, pConfig) { - kLogger.info() << "Initializing datbase schema"; - if (!m_pRepository->initDatabaseSchema()) { + QSqlDatabase database = m_pRepository->database(); + if (!database.isOpen()) { + QMessageBox::critical(0, tr("Cannot open database"), + tr("Unable to establish a database connection.\n" + "Mixxx requires QT with SQLite support. Please read " + "the Qt SQL driver documentation for information on how " + "to build it.\n\n" + "Click OK to exit."), QMessageBox::Ok); // TODO(XXX) something a little more elegant exit(-1); } - QSqlDatabase database = m_pRepository->database(); + kLogger.info() << "Initializing datbase schema"; + if (!m_pRepository->initDatabaseSchema(database)) { + // TODO(XXX) something a little more elegant + exit(-1); + } kLogger.info() << "Repairing database"; m_pTrackCollection->repairDatabase(database); |