--- a/Plugins/VcsPlugins/vcsMercurial/HgStatusMonitorThread.py Sun Feb 23 15:24:28 2014 +0100 +++ b/Plugins/VcsPlugins/vcsMercurial/HgStatusMonitorThread.py Sun Feb 23 19:20:43 2014 +0100 @@ -11,8 +11,6 @@ from VCS.StatusMonitorThread import VcsStatusMonitorThread -import Preferences - class HgStatusMonitorThread(VcsStatusMonitorThread): """ @@ -29,8 +27,6 @@ """ VcsStatusMonitorThread.__init__(self, interval, project, vcs, parent) - self.__ioEncoding = Preferences.getSystem("IOEncoding") - self.__client = None self.__useCommandLine = False @@ -72,8 +68,7 @@ self.__useCommandLine = True # step 1: get overall status - args = [] - args.append('status') + args = self.vcs.initCommand("status") args.append('--noninteractive') args.append('--all') @@ -90,12 +85,12 @@ finished = process.waitForFinished(300000) if finished and process.exitCode() == 0: output = str(process.readAllStandardOutput(), - self.__ioEncoding, 'replace') + self.vcs.getEncoding(), 'replace') else: process.kill() process.waitForFinished() error = str(process.readAllStandardError(), - self.__ioEncoding, 'replace') + self.vcs.getEncoding(), 'replace') else: process.kill() process.waitForFinished() @@ -116,8 +111,7 @@ states[name] = status # step 2: get conflicting changes - args = [] - args.append('resolve') + args = self.vcs.initCommand("resolve") args.append('--list') output = "" @@ -131,9 +125,8 @@ if procStarted: finished = process.waitForFinished(300000) if finished and process.exitCode() == 0: - output = str( - process.readAllStandardOutput(), - self.__ioEncoding, 'replace') + output = str(process.readAllStandardOutput(), + self.vcs.getEncoding(), 'replace') for line in output.splitlines(): flag, name = line.split(" ", 1)