Safely close database connections and delete backends

Also fix NewClosure leak caused by disconnected object signals
This commit is contained in:
Jonas Kvinge
2019-07-24 19:16:51 +02:00
parent bd78e8c275
commit b5eb13449b
47 changed files with 490 additions and 53 deletions

View File

@@ -60,6 +60,8 @@ class CollectionWatcher : public QObject {
void Stop() { stop_requested_ = true; }
void ExitAsync();
signals:
void NewOrUpdatedSongs(const SongList &songs);
void SongsMTimeUpdated(const SongList &songs);
@@ -68,6 +70,7 @@ signals:
void SubdirsDiscovered(const SubdirectoryList &subdirs);
void SubdirsMTimeUpdated(const SubdirectoryList &subdirs);
void CompilationsNeedUpdating();
void ExitFinished();
void ScanStarted(int task_id);
@@ -142,6 +145,7 @@ signals:
};
private slots:
void Exit();
void DirectoryChanged(const QString &path);
void IncrementalScanNow();
void FullScanNow();
@@ -204,6 +208,8 @@ signals:
SongList song_rescan_queue_; // Set by ui thread
QThread *original_thread_;
};
inline QString CollectionWatcher::NoExtensionPart(const QString& fileName) {