Skip to content

Commit 3dcf487

Browse files
committedJan 3, 2017
[processing] fix app freeze when closing options dialog (fixes #15550)
1 parent b3fddc7 commit 3dcf487

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed
 

‎python/plugins/processing/core/ProcessingConfig.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -289,16 +289,15 @@ def setValue(self, value):
289289
self.validator(value)
290290
self.value = value
291291

292-
def read(self):
293-
qsettings = QSettings()
292+
def read(self, qsettings=QSettings()):
294293
value = qsettings.value(self.qname, None)
295294
if value is not None:
296295
if isinstance(self.value, bool):
297296
value = str(value).lower() == str(True).lower()
298297
self.value = value
299298

300-
def save(self):
301-
QSettings().setValue(self.qname, self.value)
299+
def save(self, qsettings=QSettings()):
300+
qsettings.setValue(self.qname, self.value)
302301

303302
def __str__(self):
304303
return self.name + '=' + str(self.value)

‎python/plugins/processing/gui/ConfigDialog.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,7 @@
3030
import os
3131

3232
from qgis.PyQt import uic
33-
from qgis.PyQt.QtCore import (Qt,
34-
QEvent)
33+
from qgis.PyQt.QtCore import Qt, QEvent, QSettings
3534
from qgis.PyQt.QtWidgets import (QFileDialog,
3635
QDialog,
3736
QStyle,
@@ -266,6 +265,7 @@ def resetMenusToDefaults(self):
266265

267266
def accept(self):
268267
QApplication.setOverrideCursor(QCursor(Qt.WaitCursor))
268+
qsettings = QSettings()
269269
for setting in list(self.items.keys()):
270270
if setting.group != menusSettingsGroup or self.saveMenus:
271271
if isinstance(setting.value, bool):
@@ -277,7 +277,7 @@ def accept(self):
277277
QMessageBox.warning(self, self.tr('Wrong value'),
278278
self.tr('Wrong value for parameter "%s":\n\n%s' % (setting.description, str(e))))
279279
return
280-
setting.save()
280+
setting.save(qsettings)
281281
Processing.updateAlgsList()
282282
settingsWatcher.settingsChanged.emit()
283283
QApplication.restoreOverrideCursor()

0 commit comments

Comments
 (0)
Please sign in to comment.