diff --git a/src/FilterLineEdit.cpp b/src/FilterLineEdit.cpp index 63ed1239..dc969bc8 100644 --- a/src/FilterLineEdit.cpp +++ b/src/FilterLineEdit.cpp @@ -6,7 +6,11 @@ #include #include -FilterLineEdit::FilterLineEdit(QWidget* parent, std::vector* filters, size_t columnnum) : QLineEdit(parent), filterList(filters), columnNumber(columnnum) +FilterLineEdit::FilterLineEdit(QWidget* parent, std::vector* filters, size_t columnnum) : + QLineEdit(parent), + filterList(filters), + columnNumber(columnnum), + no_conditional_format(true) { setPlaceholderText(tr("Filter")); setClearButtonEnabled(true); diff --git a/src/FindReplaceDialog.cpp b/src/FindReplaceDialog.cpp index 18a9c05f..4279b3f8 100644 --- a/src/FindReplaceDialog.cpp +++ b/src/FindReplaceDialog.cpp @@ -7,6 +7,7 @@ FindReplaceDialog::FindReplaceDialog(QWidget* parent) : QDialog(parent), ui(new Ui::FindReplaceDialog), + m_scintilla(nullptr), foundIndicatorNumber(0), findInProgress(false) { diff --git a/src/TableBrowser.cpp b/src/TableBrowser.cpp index 05b244cf..7b55ccd4 100644 --- a/src/TableBrowser.cpp +++ b/src/TableBrowser.cpp @@ -328,8 +328,7 @@ void TableBrowser::init(DBBrowserDB* _db) void TableBrowser::reset() { // Reset the model - if(m_model) - m_model->reset(); + m_model->reset(); // Remove all stored table information browse data tab m_settings.clear(); diff --git a/src/sql/sqlitetypes.h b/src/sql/sqlitetypes.h index b9a17565..ea12158c 100644 --- a/src/sql/sqlitetypes.h +++ b/src/sql/sqlitetypes.h @@ -437,7 +437,10 @@ private: class IndexedColumn { public: - IndexedColumn() {} + IndexedColumn() + : m_isExpression(false) + { + } IndexedColumn(const std::string& name, bool expr, const std::string& order = std::string()) : m_name(name), diff --git a/src/sqlitedb.cpp b/src/sqlitedb.cpp index ef53c4bb..c625479f 100644 --- a/src/sqlitedb.cpp +++ b/src/sqlitedb.cpp @@ -1050,12 +1050,11 @@ bool DBBrowserDB::executeMultiSQL(QByteArray query, bool dirty, bool log) const char * const tail_start = tail; const char * const tail_end = tail + query.size() + 1; size_t total_tail_length = static_cast(tail_end - tail_start); - int res = SQLITE_OK; unsigned int line = 0; bool structure_updated = false; int last_progress_value = -1; std::string savepoint_name; - while(tail && *tail != 0 && (res == SQLITE_OK || res == SQLITE_DONE)) + while(tail && *tail != 0) { line++; @@ -1122,8 +1121,7 @@ bool DBBrowserDB::executeMultiSQL(QByteArray query, bool dirty, bool log) } // Execute next statement - res = sqlite3_prepare_v2(_db, tail, static_cast(tail_end - tail + 1), &vm, &tail); - if(res == SQLITE_OK) + if(sqlite3_prepare_v2(_db, tail, static_cast(tail_end - tail + 1), &vm, &tail) == SQLITE_OK) { switch(sqlite3_step(vm)) { diff --git a/src/sqlitetablemodel.cpp b/src/sqlitetablemodel.cpp index f06482e4..db01ebbb 100644 --- a/src/sqlitetablemodel.cpp +++ b/src/sqlitetablemodel.cpp @@ -419,8 +419,8 @@ QVariant SqliteTableModel::data(const QModelIndex &index, int role) const if(m_imagePreviewEnabled && !isImageData(data).isNull()) { QImage img; - img.loadFromData(data); - return QPixmap::fromImage(img); + if(img.loadFromData(data)) + return QPixmap::fromImage(img); } } @@ -796,16 +796,17 @@ std::vector SqliteTableModel::getColumns(std::shared_ptr p pDb = m_db.get(tr("retrieving list of columns")); sqlite3_stmt* stmt; - int status = sqlite3_prepare_v2(pDb.get(), sQuery.c_str(), static_cast(sQuery.size()), &stmt, nullptr); std::vector listColumns; - if(SQLITE_OK == status) + if(sqlite3_prepare_v2(pDb.get(), sQuery.c_str(), static_cast(sQuery.size()), &stmt, nullptr) == SQLITE_OK) { - sqlite3_step(stmt); - int columns = sqlite3_data_count(stmt); - for(int i = 0; i < columns; ++i) + if(sqlite3_step(stmt) == SQLITE_ROW) { - listColumns.push_back(sqlite3_column_name(stmt, i)); - fieldsTypes.push_back(sqlite3_column_type(stmt, i)); + int columns = sqlite3_data_count(stmt); + for(int i = 0; i < columns; ++i) + { + listColumns.push_back(sqlite3_column_name(stmt, i)); + fieldsTypes.push_back(sqlite3_column_type(stmt, i)); + } } } sqlite3_finalize(stmt);