summaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/guiSQLiteStudio/sqleditor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/sqleditor.cpp')
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/sqleditor.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/sqleditor.cpp b/SQLiteStudio3/guiSQLiteStudio/sqleditor.cpp
index 076894a..4b0628b 100644
--- a/SQLiteStudio3/guiSQLiteStudio/sqleditor.cpp
+++ b/SQLiteStudio3/guiSQLiteStudio/sqleditor.cpp
@@ -40,6 +40,9 @@ SqlEditor::SqlEditor(QWidget *parent) :
SqlEditor::~SqlEditor()
{
+ if (objectsInNamedDbFuture.isRunning())
+ objectsInNamedDbFuture.waitForFinished();
+
if (queryParser)
{
delete queryParser;
@@ -515,7 +518,7 @@ void SqlEditor::refreshValidObjects()
if (!db || !db->isValid())
return;
- QtConcurrent::run([this]()
+ objectsInNamedDbFuture = QtConcurrent::run([this]()
{
QMutexLocker lock(&objectsInNamedDbMutex);
objectsInNamedDb.clear();
@@ -526,7 +529,7 @@ void SqlEditor::refreshValidObjects()
QStringList objects;
foreach (const QString& dbName, databases)
{
- objects = resolver.getAllObjects();
+ objects = resolver.getAllObjects(dbName);
objectsInNamedDb[dbName] << objects;
}
});