--- a/eric6/Plugins/VcsPlugins/vcsPySvn/SvnBlameDialog.py Sat Oct 10 15:17:29 2020 +0200 +++ b/eric6/Plugins/VcsPlugins/vcsPySvn/SvnBlameDialog.py Sat Oct 10 16:03:53 2020 +0200 @@ -12,11 +12,13 @@ import pysvn -from PyQt5.QtCore import QMutexLocker, Qt +from PyQt5.QtCore import Qt from PyQt5.QtWidgets import ( QHeaderView, QDialog, QDialogButtonBox, QTreeWidgetItem ) +from E5Utilities.E5MutexLocker import E5MutexLocker + from .SvnDialogMixin import SvnDialogMixin from .Ui_SvnBlameDialog import Ui_SvnBlameDialog @@ -67,12 +69,11 @@ dname, fname = self.vcs.splitPath(fn) - locker = QMutexLocker(self.vcs.vcsExecutionMutex) cwd = os.getcwd() os.chdir(dname) try: - annotations = self.client.annotate(fname) - locker.unlock() + with E5MutexLocker(self.vcs.vcsExecutionMutex): + annotations = self.client.annotate(fname) for annotation in annotations: author = annotation["author"] line = annotation["line"] @@ -80,7 +81,6 @@ annotation["revision"].number, author, annotation["number"] + 1, line) except pysvn.ClientError as e: - locker.unlock() self.__showError(e.args[0] + '\n') self.__finish() os.chdir(cwd)