diff options
-rw-r--r-- | picfilesmodel.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/picfilesmodel.cpp b/picfilesmodel.cpp index 8ea4442..f0d02dc 100644 --- a/picfilesmodel.cpp +++ b/picfilesmodel.cpp @@ -172,9 +172,6 @@ SmTreeItem *PicFilesModel::mappingTreeFromFile(int fileId){ return 0; } SmTreeItem *retval = new SmTreeItem(2); - if(!mDb.isOpen()){ - mDb.open(); - } QSqlQuery mpq(mDb); mpq.prepare("SELECT imapping_parents_id, iparent_id, tdescription_name, mapping_parents.idescription_id FROM mapping_parents, mapping_description WHERE imapping_parents_id = :id AND mapping_parents.idescription_id = mapping_description.idescription_id"); foreach(int pId, parentIds){ @@ -295,8 +292,14 @@ QList<int> PicFilesModel::mappingPIdsFromFiles(QList<int> fileIds){ foreach(int id, fileIds){ idList << QString::number(id); } - QString query = mMappingsQS.arg(idList.join(",")); - QSqlQuery q(query, mDb); + QString qTempl = QString(mMappingsQS.arg(idList.join(","))); + QSqlQuery q(mDb); + q.prepare(qTempl); + if(!q.exec()){ + mDb.close(); + mDb.open(); + return QList<int>(); + } QList<int> retval; while(q.next()){ retval << q.value(0).toInt(); |