X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fabstractsqlstorage.cpp;h=00c818fe2240375f0ac4938b6584e727fe157918;hp=92f03cb3cb0148541dbc0fd39ba10a9be45d5206;hb=ecf6e74621aad76c35e67a0df3faafd994fce9dc;hpb=9337b0bdce0bff71a9ea08cc630ce065028fe389 diff --git a/src/core/abstractsqlstorage.cpp b/src/core/abstractsqlstorage.cpp index 92f03cb3..00c818fe 100644 --- a/src/core/abstractsqlstorage.cpp +++ b/src/core/abstractsqlstorage.cpp @@ -19,6 +19,7 @@ ***************************************************************************/ #include "abstractsqlstorage.h" +#include "quassel.h" #include "logger.h" @@ -94,6 +95,8 @@ void AbstractSqlStorage::addConnectionToPool() { Storage::State AbstractSqlStorage::init(const QVariantMap &settings) { setConnectionProperties(settings); + _debug = Quassel::isOptionSet("debug"); + QSqlDatabase db = logDb(); if(!db.isValid() || !db.isOpen()) return NotAvailable; @@ -225,8 +228,10 @@ int AbstractSqlStorage::schemaVersion() { } bool AbstractSqlStorage::watchQuery(QSqlQuery &query) { - if(query.lastError().isValid()) { - qCritical() << "unhandled Error in QSqlQuery!"; + bool queryError = query.lastError().isValid(); + if(queryError || _debug) { + if(queryError) + qCritical() << "unhandled Error in QSqlQuery!"; qCritical() << " last Query:\n" << qPrintable(query.lastQuery()); qCritical() << " executed Query:\n" << qPrintable(query.executedQuery()); QVariantMap boundValues = query.boundValues(); @@ -263,7 +268,7 @@ bool AbstractSqlStorage::watchQuery(QSqlQuery &query) { qCritical() << " Driver Message:" << qPrintable(query.lastError().driverText()); qCritical() << " DB Message:" << qPrintable(query.lastError().databaseText()); - return false; + return !queryError; } return true; }