Fixing security vulnerability with Qt 4.8.5+ and PostgreSQL.
[quassel.git] / src / core / abstractsqlstorage.cpp
index ad08947..c3f1841 100644 (file)
@@ -91,11 +91,14 @@ void AbstractSqlStorage::addConnectionToPool()
     }
 
     if (!db.open()) {
-        qWarning() << "Unable to open database" << displayName() << "for thread" << QThread::currentThread();
-        qWarning() << "-" << db.lastError().text();
+        quWarning() << "Unable to open database" << displayName() << "for thread" << QThread::currentThread();
+        quWarning() << "-" << db.lastError().text();
     }
     else {
-        initDbSession(db);
+        if (!initDbSession(db)) {
+            quWarning() << "Unable to initialize database" << displayName() << "for thread" << QThread::currentThread();
+            db.close();
+        }
     }
 }