--- a/eric6/Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.py Wed Jan 13 20:13:26 2021 +0100 +++ b/eric6/Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.py Thu Jan 14 17:51:12 2021 +0100 @@ -312,23 +312,19 @@ args = self.vcs.initCommand("status") if self.__mq: args.append('--mq') - if isinstance(fn, list): - self.dname, fnames = self.vcs.splitPathList(fn) - else: - self.dname, fname = self.vcs.splitPath(fn) else: if self.vcs.hasSubrepositories(): args.append("--subrepos") if isinstance(fn, list): - self.dname, fnames = self.vcs.splitPathList(fn) self.vcs.addArguments(args, fn) else: - self.dname, fname = self.vcs.splitPath(fn) args.append(fn) self.refreshButton.setEnabled(False) + self.__repoPath = self.__hgClient.getRepository() + out, err = self.__hgClient.runcommand(args) if err: self.__showError(err) @@ -490,9 +486,9 @@ Private slot to handle the Commit context menu entry. """ if self.__mq: - self.vcs.vcsCommit(self.dname, "", mq=True) + self.vcs.vcsCommit(self.__repoPath, "", mq=True) else: - names = [os.path.join(self.dname, itm.text(self.__pathColumn)) + names = [os.path.join(self.__repoPath, itm.text(self.__pathColumn)) for itm in self.__getCommitableItems()] if not names: E5MessageBox.information( @@ -532,7 +528,7 @@ """ Private slot to handle the Add context menu entry. """ - names = [os.path.join(self.dname, itm.text(self.__pathColumn)) + names = [os.path.join(self.__repoPath, itm.text(self.__pathColumn)) for itm in self.__getUnversionedItems()] if not names: E5MessageBox.information( @@ -556,7 +552,7 @@ @param mode add mode (string one of 'normal' or 'large') """ - names = [os.path.join(self.dname, itm.text(self.__pathColumn)) + names = [os.path.join(self.__repoPath, itm.text(self.__pathColumn)) for itm in self.__getUnversionedItems()] if not names: E5MessageBox.information( @@ -579,7 +575,7 @@ """ Private slot to handle the Remove context menu entry. """ - names = [os.path.join(self.dname, itm.text(self.__pathColumn)) + names = [os.path.join(self.__repoPath, itm.text(self.__pathColumn)) for itm in self.__getMissingItems()] if not names: E5MessageBox.information( @@ -596,7 +592,7 @@ """ Private slot to handle the Revert context menu entry. """ - names = [os.path.join(self.dname, itm.text(self.__pathColumn)) + names = [os.path.join(self.__repoPath, itm.text(self.__pathColumn)) for itm in self.__getModifiedItems()] if not names: E5MessageBox.information( @@ -620,7 +616,7 @@ """ Private slot to handle the Restore Missing context menu entry. """ - names = [os.path.join(self.dname, itm.text(self.__pathColumn)) + names = [os.path.join(self.__repoPath, itm.text(self.__pathColumn)) for itm in self.__getMissingItems()] if not names: E5MessageBox.information( @@ -638,7 +634,7 @@ """ Private slot to handle the Diff context menu entry. """ - names = [os.path.join(self.dname, itm.text(self.__pathColumn)) + names = [os.path.join(self.__repoPath, itm.text(self.__pathColumn)) for itm in self.__getModifiedItems()] if not names: E5MessageBox.information( @@ -658,7 +654,7 @@ """ Private slot to handle the Diff context menu entry. """ - names = [os.path.join(self.dname, itm.text(self.__pathColumn)) + names = [os.path.join(self.__repoPath, itm.text(self.__pathColumn)) for itm in self.__getModifiedItems()] if not names: E5MessageBox.information( @@ -762,7 +758,7 @@ """ Private slot to handle the Commit Merge context menu entry. """ - self.vcs.vcsCommit(self.dname, self.tr('Merge'), merge=True) + self.vcs.vcsCommit(self.__repoPath, self.tr('Merge'), merge=True) self.__committed() def __abortMerge(self): @@ -786,7 +782,7 @@ if not self.__mq: selectedItems = self.statusList.selectedItems() if len(selectedItems) == 1: - fn = os.path.join(self.dname, + fn = os.path.join(self.__repoPath, selectedItems[0].text(self.__pathColumn)) self.__diffGenerator.start(fn)