From a67257ebc9354933fafe1bd252568819ead79552 Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 27 Nov 2010 14:02:42 +0100 Subject: Streamline database access An unsuccessfull attempt to get rid of the warning "connection treedb is still in use..." by trying to delete all queries and setting mDb to QSqlDatabase() in the destructor. Strangely enough, the warning is only issued from inside QtCreator... Maybe it's some kind of race. --- archivetreeview.cpp | 5 +++++ archivetreeview.h | 2 +- filestreemodel.cpp | 3 ++- seriestreemodel.cpp | 3 ++- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/archivetreeview.cpp b/archivetreeview.cpp index 3529b01..8e55058 100644 --- a/archivetreeview.cpp +++ b/archivetreeview.cpp @@ -276,6 +276,11 @@ NoCoverMovieModel::NoCoverMovieModel(const QStringList &headers, QObject *parent refresh(); } +NoCoverMovieModel::~NoCoverMovieModel(){ + delete mDataQuery; + mDb = QSqlDatabase(); +} + QVariant NoCoverMovieModel::data(const QModelIndex &index, int role) const{ if(!index.isValid()){ return QVariant(); diff --git a/archivetreeview.h b/archivetreeview.h index 2789298..a9d2266 100644 --- a/archivetreeview.h +++ b/archivetreeview.h @@ -80,7 +80,7 @@ class NoCoverMovieModel : public SmTreeModel { enum CustomRoles { SeriesNameRole = Qt::UserRole + 1, SeriesPartRole = Qt::UserRole + 2, SeriesIdRole = Qt::UserRole + 3 }; enum Fields { Display = 0, SeriesName = 1, SeriesPart = 2, SeriesId = 3 }; explicit NoCoverMovieModel(const QStringList &headers, QObject *parent = 0); - virtual ~NoCoverMovieModel() {} + virtual ~NoCoverMovieModel(); virtual QVariant data(const QModelIndex &index, int role) const; Qt::ItemFlags flags(const QModelIndex &index) const; diff --git a/filestreemodel.cpp b/filestreemodel.cpp index 38ef000..db16d95 100644 --- a/filestreemodel.cpp +++ b/filestreemodel.cpp @@ -68,7 +68,8 @@ FilesTreeModel::~FilesTreeModel(){ delete mInsertFileQuery; delete mFilesQuery; delete mDeleteFileQuery; - //mDb = QSqlDatabase(); + delete mFileTypeQuery; + mDb = QSqlDatabase(); } const QString FilesTreeModel::modeName(int mode) const{ diff --git a/seriestreemodel.cpp b/seriestreemodel.cpp index a2bde55..ccc6abe 100644 --- a/seriestreemodel.cpp +++ b/seriestreemodel.cpp @@ -49,13 +49,14 @@ SeriesTreeModel::~SeriesTreeModel(){ delete mUpdateSeriesIdQuery; delete mUpdateSeriesNameQuery; delete mDeleteSeriesQuery; + delete mDeleteSeriesPartQuery; delete mSeriesInsertQuery; delete mSeriesFilesQuery; delete mSeriesPartFilesQuery; delete mSeriesPartInsertQuery; delete mSortedMovieListQuery; delete mNextDvdNoQuery; - mDb.close(); + delete mGenreFilterQuery; mDb = QSqlDatabase(); } -- cgit v1.2.3-70-g09d2