diff -r 49f3377aebf1 -r 787a6b3f8c9f eric6/Plugins/VcsPlugins/vcsGit/GitDiffGenerator.py --- a/eric6/Plugins/VcsPlugins/vcsGit/GitDiffGenerator.py Fri Oct 09 17:19:29 2020 +0200 +++ b/eric6/Plugins/VcsPlugins/vcsGit/GitDiffGenerator.py Sat Oct 10 12:20:51 2020 +0200 @@ -13,6 +13,8 @@ from PyQt5.QtCore import pyqtSignal, QProcess, QTimer, QObject +from E5Gui.E5OverrideCursor import E5OverrideCursorProcess + import Preferences @@ -35,25 +37,25 @@ self.vcs = vcs - self.process = QProcess() - self.process.finished.connect(self.__procFinished) - self.process.readyReadStandardOutput.connect( - lambda: self.__readStdout(self.process)) - self.process.readyReadStandardError.connect( - lambda: self.__readStderr(self.process)) + self.__process = E5OverrideCursorProcess() + self.__process.finished.connect(self.__procFinished) + self.__process.readyReadStandardOutput.connect( + lambda: self.__readStdout(self.__process)) + self.__process.readyReadStandardError.connect( + lambda: self.__readStderr(self.__process)) - self.process2 = QProcess() - self.process2.finished.connect(self.__procFinished) - self.process2.readyReadStandardOutput.connect( - lambda: self.__readStdout(self.process2)) - self.process2.readyReadStandardError.connect( - lambda: self.__readStderr(self.process2)) + self.__process2 = E5OverrideCursorProcess() + self.__process2.finished.connect(self.__procFinished) + self.__process2.readyReadStandardOutput.connect( + lambda: self.__readStdout(self.__process2)) + self.__process2.readyReadStandardError.connect( + lambda: self.__readStderr(self.__process2)) def stopProcesses(self): """ Public slot to stop the diff processes. """ - for process in [self.process, self.process2]: + for process in [self.__process, self.__process2]: if ( process is not None and process.state() != QProcess.NotRunning @@ -139,18 +141,18 @@ if os.path.splitdrive(repodir)[1] == os.sep: return False - self.process.kill() - self.process.setWorkingDirectory(repodir) - self.process.start('git', args) - procStarted = self.process.waitForStarted(5000) + self.__process.kill() + self.__process.setWorkingDirectory(repodir) + self.__process.start('git', args) + procStarted = self.__process.waitForStarted(5000) if not procStarted: return False if diffMode == "work2stage2repo": - self.process2.kill() - self.process2.setWorkingDirectory(repodir) - self.process2.start('git', args2) - procStarted = self.process2.waitForStarted(5000) + self.__process2.kill() + self.__process2.setWorkingDirectory(repodir) + self.__process2.start('git', args2) + procStarted = self.__process2.waitForStarted(5000) if not procStarted: return False @@ -164,8 +166,8 @@ @param exitStatus exit status of the process (QProcess.ExitStatus) """ if ( - self.process.state() == QProcess.NotRunning and - self.process2.state() == QProcess.NotRunning + self.__process.state() == QProcess.NotRunning and + self.__process2.state() == QProcess.NotRunning ): self.finished.emit() @@ -226,7 +228,7 @@ """ process.setReadChannel(QProcess.StandardOutput) - isTopDiff = process == self.process + isTopDiff = process == self.__process while process.canReadLine(): line = str(process.readLine(), self.__ioEncoding,