diff options
Diffstat (limited to 'smdirwatcher.cpp')
-rw-r--r-- | smdirwatcher.cpp | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/smdirwatcher.cpp b/smdirwatcher.cpp index 24deee1..8c0570e 100644 --- a/smdirwatcher.cpp +++ b/smdirwatcher.cpp @@ -25,6 +25,8 @@ SmDirWatcher::SmDirWatcher(int numFields, QObject *parent) : QThread(parent), mF mBufLen = 1024 * (sizeof(struct inotify_event) + 16); mINdata = new char[mBufLen]; mFd = inotify_init(); + mDb = QSqlDatabase::cloneDatabase(QSqlDatabase::database("treedb"), "dirwatcherdb"); + mDb.open(); } void SmDirWatcher::setDir(const QString &dir){ @@ -95,8 +97,7 @@ QList<QVariant> SmDirWatcher::generalData(const QString &path){ int SmDirWatcher::presenceData(QString &md5){ int retval = SmDirModel::InNone; - QSqlDatabase db = QSqlDatabase::database("treedb"); - QSqlQuery present1Q(db); + QSqlQuery present1Q(mDb); present1Q.prepare("SELECT COUNT(*) FROM files WHERE cmd5sum = :md5"); present1Q.bindValue(":md5", md5); present1Q.exec(); @@ -106,7 +107,7 @@ int SmDirWatcher::presenceData(QString &md5){ retval = SmDirModel::InFiles; } } - QSqlQuery present2Q(db); + QSqlQuery present2Q(mDb); present2Q.prepare("SELECT COUNT(*) from files_origin WHERE cmd5sum = :md5"); present2Q.bindValue(":md5", md5); while(present2Q.next()){ @@ -115,7 +116,7 @@ int SmDirWatcher::presenceData(QString &md5){ retval = SmDirModel::InOrigin; } } - QSqlQuery present3Q(db); + QSqlQuery present3Q(mDb); present3Q.prepare("SELECT COUNT(*) FROM pics WHERE cmd5sum = :md5"); present3Q.bindValue(":md5", md5); while(present3Q.next()){ @@ -127,8 +128,6 @@ int SmDirWatcher::presenceData(QString &md5){ return retval; } -#include <QDebug> - void SmDirWatcher::run(){ struct pollfd pfd[1]; pfd[0].fd = mFd; @@ -153,16 +152,12 @@ void SmDirWatcher::run(){ QString name = QString("%1/%2").arg(mCurrent).arg(e->name); QList<QVariant> d = generalData(name); if(mask & IN_CREATE || mask & IN_MOVED_TO){ - qDebug() << "Adding" << name; emit newData(d, Added); }else if(mask & IN_DELETE || mask & IN_MOVED_FROM){ - qDebug() << "DEL|MOVE" << name; emit newData(d, Deleted); }else if(mask & IN_MODIFY){ - qDebug() << "MOD" << name; emit newData(d, Modified); }else if(mask & IN_CLOSE_WRITE){ - qDebug() << "CLOSEW" << name; emit newData(d, CloseWrite); } i += sizeof(inotify_event) + e->len; |