diff -r 0572a215bd2f -r 5994b80b8760 eric6/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py --- a/eric6/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py Sun Apr 11 16:53:48 2021 +0200 +++ b/eric6/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py Sun Apr 11 18:45:10 2021 +0200 @@ -1268,35 +1268,34 @@ self.__resizeColumnsLog() - if self.__started: - if not self.__finishCallbacks: - # we are really done - if self.__selectedRevisions: - foundItems = self.logTree.findItems( - self.__selectedRevisions[0], Qt.MatchFlag.MatchExactly, + if self.__started and not self.__finishCallbacks: + # we are really done + if self.__selectedRevisions: + foundItems = self.logTree.findItems( + self.__selectedRevisions[0], Qt.MatchFlag.MatchExactly, + self.RevisionColumn) + if foundItems: + self.logTree.setCurrentItem(foundItems[0]) + else: + self.logTree.setCurrentItem( + self.logTree.topLevelItem(0)) + elif self.__projectWorkingDirParents: + for rev in self.__projectWorkingDirParents: + # rev string format must match with the format of the + # __generateLogItem() method + items = self.logTree.findItems( + "{0:>7}:".format(rev), + Qt.MatchFlag.MatchStartsWith, self.RevisionColumn) - if foundItems: - self.logTree.setCurrentItem(foundItems[0]) - else: - self.logTree.setCurrentItem( - self.logTree.topLevelItem(0)) - elif self.__projectWorkingDirParents: - for rev in self.__projectWorkingDirParents: - # rev string format must match with the format of the - # __generateLogItem() method - items = self.logTree.findItems( - "{0:>7}:".format(rev), - Qt.MatchFlag.MatchStartsWith, - self.RevisionColumn) - if items: - self.logTree.setCurrentItem(items[0]) - break - else: - self.logTree.setCurrentItem( - self.logTree.topLevelItem(0)) + if items: + self.logTree.setCurrentItem(items[0]) + break else: - self.logTree.setCurrentItem(self.logTree.topLevelItem(0)) - self.__started = False + self.logTree.setCurrentItem( + self.logTree.topLevelItem(0)) + else: + self.logTree.setCurrentItem(self.logTree.topLevelItem(0)) + self.__started = False if self.commandMode in ("incoming", "outgoing"): self.commandMode = "log" # switch to log mode