Skip to content

Commit 787fecb

Browse files
nirvnalexbruy
authored andcommittedJan 24, 2017
[processing] fix app freeze when closing options dialog (fixes #15550)
(cherry picked from commit 3dcf487)
1 parent 4923e46 commit 787fecb

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
@@ -293,16 +293,15 @@ def setValue(self, value):
293293
self.validator(value)
294294
self.value = value
295295

296-
def read(self):
297-
qsettings = QSettings()
296+
def read(self, qsettings=QSettings()):
298297
value = qsettings.value(self.qname, None)
299298
if value is not None:
300299
if isinstance(self.value, bool):
301300
value = unicode(value).lower() == unicode(True).lower()
302301
self.value = value
303302

304-
def save(self):
305-
QSettings().setValue(self.qname, self.value)
303+
def save(self, qsettings=QSettings()):
304+
qsettings.setValue(self.qname, self.value)
306305

307306
def __str__(self):
308307
return self.name + '=' + unicode(self.value)

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@
2828
import os
2929

3030
from qgis.PyQt import uic
31-
from qgis.PyQt.QtCore import (Qt,
32-
QEvent)
31+
from qgis.PyQt.QtCore import Qt, QEvent, QSettings
3332
from qgis.PyQt.QtWidgets import (QFileDialog,
3433
QDialog,
3534
QStyle,
@@ -264,6 +263,7 @@ def resetMenusToDefaults(self):
264263

265264
def accept(self):
266265
QApplication.setOverrideCursor(QCursor(Qt.WaitCursor))
266+
qsettings = QSettings()
267267
for setting in self.items.keys():
268268
if setting.group != menusSettingsGroup or self.saveMenus:
269269
if isinstance(setting.value, bool):
@@ -275,7 +275,7 @@ def accept(self):
275275
QMessageBox.warning(self, self.tr('Wrong value'),
276276
self.tr('Wrong value for parameter "%s":\n\n%s' % (setting.description, unicode(e))))
277277
return
278-
setting.save()
278+
setting.save(qsettings)
279279
Processing.updateAlgsList()
280280
settingsWatcher.settingsChanged.emit()
281281
updateMenus()

0 commit comments

Comments
 (0)
Please sign in to comment.