diff -r 2cfe874dfe42 -r 0550f9915d65 Plugins/VcsPlugins/vcsMercurial/HgClient.py --- a/Plugins/VcsPlugins/vcsMercurial/HgClient.py Sat Jan 14 15:11:08 2012 +0100 +++ b/Plugins/VcsPlugins/vcsMercurial/HgClient.py Sat Jan 14 15:35:19 2012 +0100 @@ -98,18 +98,19 @@ """ Public method to stop the command server. """ - self.__server.closeWriteChannel() - res = self.__server.waitForFinished(5000) - if not res: - self.__server.terminate() - res = self.__server.waitForFinished(3000) + if self.__server is not None: + self.__server.closeWriteChannel() + res = self.__server.waitForFinished(5000) if not res: - self.__server.kill() - self.__server.waitForFinished(3000) - - self.__started = False - self.__server.finished.disconnect(self.__serverFinished) - self.__server = None + self.__server.terminate() + res = self.__server.waitForFinished(3000) + if not res: + self.__server.kill() + self.__server.waitForFinished(3000) + + self.__started = False + self.__server.finished.disconnect(self.__serverFinished) + self.__server = None def restartServer(self): """