Thu, 15 Sep 2011 18:28:26 +0200
Fixed issues in various Mercurial files that could cause infinite loops on Windows systems.
--- a/Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/HgBookmarksInOutDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/HgBookmarksInOutDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -99,7 +99,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = []
--- a/Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/HgBookmarksListDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/HgBookmarksListDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -90,7 +90,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = []
--- a/Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/bookmarks.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/bookmarks.py Thu Sep 15 18:28:26 2011 +0200 @@ -109,7 +109,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dlg = HgBookmarkDialog(HgBookmarkDialog.DEFINE_MODE, @@ -141,7 +141,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return bookmark, ok = QInputDialog.getItem( @@ -171,7 +171,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dlg = HgBookmarkRenameDialog(self.hgGetBookmarksList(repodir)) @@ -199,7 +199,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dlg = HgBookmarkDialog(HgBookmarkDialog.MOVE_MODE, @@ -296,7 +296,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return bookmarks = self.__getInOutBookmarks(repodir, True) @@ -329,7 +329,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return bookmarks = self.__getInOutBookmarks(repodir, False)
--- a/Plugins/VcsPlugins/vcsMercurial/FetchExtension/fetch.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/FetchExtension/fetch.py Thu Sep 15 18:28:26 2011 +0200 @@ -40,7 +40,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False res = False
--- a/Plugins/VcsPlugins/vcsMercurial/GpgExtension/HgGpgSignaturesDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/GpgExtension/HgGpgSignaturesDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -87,7 +87,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = []
--- a/Plugins/VcsPlugins/vcsMercurial/GpgExtension/gpg.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/GpgExtension/gpg.py Thu Sep 15 18:28:26 2011 +0200 @@ -62,7 +62,7 @@ repodir = self.vcs.splitPath(path)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if rev is None: @@ -99,7 +99,7 @@ repodir = self.vcs.splitPath(path)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if self.vcs.isExtensionActive("bookmarks"):
--- a/Plugins/VcsPlugins/vcsMercurial/HgAnnotateDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/HgAnnotateDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -97,7 +97,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = []
--- a/Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/HgDiffDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -169,7 +169,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return self.process.kill()
--- a/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -701,7 +701,7 @@ self.repodir = self.dname while not os.path.isdir(os.path.join(self.repodir, self.vcs.adminDir)): self.repodir = os.path.dirname(self.repodir) - if self.repodir == os.sep: + if self.os.path.splitdrive(repodir)[1] == os.sep: return self.projectMode = (self.fname == "." and self.dname == self.repodir)
--- a/Plugins/VcsPlugins/vcsMercurial/HgLogDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/HgLogDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -111,7 +111,7 @@ self.repodir = self.dname while not os.path.isdir(os.path.join(self.repodir, self.vcs.adminDir)): self.repodir = os.path.dirname(self.repodir) - if self.repodir == os.sep: + if self.os.path.splitdrive(repodir)[1] == os.sep: return self.projectMode = (self.fname == "." and self.dname == self.repodir)
--- a/Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/HgStatusDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -210,7 +210,7 @@ repodir = self.dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if self.__hgClient:
--- a/Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/HgTagBranchListDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -98,7 +98,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = []
--- a/Plugins/VcsPlugins/vcsMercurial/PurgeExtension/purge.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/PurgeExtension/purge.py Thu Sep 15 18:28:26 2011 +0200 @@ -90,7 +90,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False if all: @@ -126,7 +126,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False entries = self.__getEntries(repodir, all)
--- a/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesDefineGuardsDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesDefineGuardsDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -97,7 +97,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return self.__repodir = repodir
--- a/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesHeaderDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesHeaderDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -79,7 +79,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = []
--- a/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesListAllGuardsDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesListAllGuardsDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -49,7 +49,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = []
--- a/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesListDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesListDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -92,7 +92,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return self.__repodir = repodir
--- a/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesListGuardsDialog.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesListGuardsDialog.py Thu Sep 15 18:28:26 2011 +0200 @@ -72,7 +72,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return self.__repodir = repodir
--- a/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/queues.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/queues.py Thu Sep 15 18:28:26 2011 +0200 @@ -246,7 +246,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dlg = HgQueuesNewPatchDialog(HgQueuesNewPatchDialog.NEW_MODE) @@ -291,7 +291,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -367,7 +367,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False args = [] @@ -437,7 +437,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -460,7 +460,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -491,7 +491,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -526,7 +526,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -566,7 +566,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return patchnames = sorted( @@ -600,7 +600,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return patchnames = sorted( @@ -625,7 +625,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return patchnames = sorted( @@ -670,7 +670,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return guardsList = self.getGuardsList(repodir) @@ -705,7 +705,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -727,7 +727,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return guardsList = self.getGuardsList(repodir, all=False) @@ -746,7 +746,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if isCreate: @@ -812,7 +812,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if operation == Queues.QUEUE_PURGE: @@ -881,7 +881,7 @@ repodir = self.vcs.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return self.queuesListQueuesDialog = HgQueuesQueueManagementDialog(
--- a/Plugins/VcsPlugins/vcsMercurial/RebaseExtension/rebase.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/RebaseExtension/rebase.py Thu Sep 15 18:28:26 2011 +0200 @@ -40,7 +40,7 @@ repodir = self.vcs.splitPath(path)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False res = False @@ -96,7 +96,7 @@ repodir = self.vcs.splitPath(path)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False args = [] @@ -123,7 +123,7 @@ repodir = self.vcs.splitPath(path)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False args = []
--- a/Plugins/VcsPlugins/vcsMercurial/TransplantExtension/transplant.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/TransplantExtension/transplant.py Thu Sep 15 18:28:26 2011 +0200 @@ -40,7 +40,7 @@ repodir = self.vcs.splitPath(path)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False res = False @@ -88,7 +88,7 @@ repodir = self.vcs.splitPath(path)[0] while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = []
--- a/Plugins/VcsPlugins/vcsMercurial/hg.py Wed Sep 14 19:46:36 2011 +0200 +++ b/Plugins/VcsPlugins/vcsMercurial/hg.py Thu Sep 15 18:28:26 2011 +0200 @@ -301,7 +301,7 @@ args.append('init') args.append(projectDir) # init is not possible with the command server - dia = HgDialog(self.trUtf8('Creating Mercurial repository')) + dia = HgDialog(self.trUtf8('Creating Mercurial repository'), self) res = dia.startProcess(args) if res: dia.exec_() @@ -447,7 +447,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if self.__client: @@ -507,7 +507,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False if noDialog: @@ -555,7 +555,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if isinstance(name, list): @@ -623,7 +623,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False if noDialog: @@ -686,7 +686,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False if noDialog: @@ -728,7 +728,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if self.isExtensionActive("bookmarks"): @@ -803,7 +803,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dlg = HgTagDialog(self.hgGetTagsList(repodir)) @@ -856,7 +856,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False dia = HgDialog(self.trUtf8('Reverting changes'), self) @@ -879,7 +879,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return opts = self.options['global'][:] @@ -929,7 +929,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False if self.isExtensionActive("bookmarks"): @@ -968,7 +968,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return 0 args = [] @@ -1037,7 +1037,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return names args = [] @@ -1145,7 +1145,7 @@ repodir = name while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dia = HgDialog(self.trUtf8('Mercurial command'), self) @@ -1335,7 +1335,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False dia = HgDialog(self.trUtf8('Copying {0}') @@ -1508,7 +1508,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if self.isExtensionActive("bookmarks"): @@ -1598,7 +1598,7 @@ repodir = self.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False dia = HgDialog(title, self) @@ -1633,7 +1633,7 @@ repodir = self.splitPath(name)[0] while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dia = HgDialog(self.trUtf8('Pushing to a remote Mercurial repository'), self) @@ -1667,7 +1667,7 @@ repodir = self.splitPath(ppath)[0] while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return process = QProcess() @@ -1752,7 +1752,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return False dia = HgDialog(self.trUtf8('Resolving files/directories'), self) @@ -1773,7 +1773,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return name, ok = QInputDialog.getItem( @@ -1805,7 +1805,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -1836,7 +1836,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return cfgFile = os.path.join(repodir, self.adminDir, "hgrc") @@ -1862,7 +1862,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -1886,7 +1886,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -1910,7 +1910,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -1933,7 +1933,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -1956,7 +1956,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return args = [] @@ -2030,7 +2030,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if self.isExtensionActive("bookmarks"): @@ -2104,7 +2104,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return file = E5FileDialog.getOpenFileName( @@ -2135,7 +2135,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return file = E5FileDialog.getOpenFileName( @@ -2167,7 +2167,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return res = False @@ -2215,7 +2215,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return rev = "" @@ -2269,7 +2269,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dia = HgDialog( @@ -2294,7 +2294,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return if self.isExtensionActive("bookmarks"): @@ -2345,7 +2345,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return res = E5MessageBox.yesNo(None, @@ -2370,7 +2370,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return self.serveDlg = HgServeDialog(self, repodir) @@ -2390,7 +2390,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dlg = HgImportDialog() @@ -2443,7 +2443,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if repodir == os.sep: + if os.path.splitdrive(repodir)[1] == os.sep: return dlg = HgExportDialog() @@ -2506,7 +2506,7 @@ repodir = dname while not os.path.isdir(os.path.join(repodir, self.adminDir)): repodir = os.path.dirname(repodir) - if not repodir or repodir == os.sep: + if not repodir or os.path.splitdrive(repodir)[1] == os.sep: return cfgFile = os.path.join(repodir, self.adminDir, "hgrc") @@ -2595,15 +2595,23 @@ self.__monitorRepoIniFile(project.getProjectPath()) if self.version >= (1, 9): - client = HgClient(project.getProjectPath(), "utf-8", self) - ok, err = client.startServer() - if ok: - self.__client = client - else: - E5MessageBox.warning(None, - self.trUtf8("Mercurial Command Server"), - self.trUtf8("""<p>The Mercurial Command Server could not be""" - """ started.</p><p>Reason: {0}</p>""").format(err)) + # find the root of the repo + repodir = project.getProjectPath() + while not os.path.isdir(os.path.join(repodir, self.adminDir)): + repodir = os.path.dirname(repodir) + if not repodir or os.path.splitdrive(repodir)[1] == os.sep: + repodir = "" + break + if repodir: + client = HgClient(repodir, "utf-8", self) + ok, err = client.startServer() + if ok: + self.__client = client + else: + E5MessageBox.warning(None, + self.trUtf8("Mercurial Command Server"), + self.trUtf8("""<p>The Mercurial Command Server could not be""" + """ started.</p><p>Reason: {0}</p>""").format(err)) return self.__projectHelper
--- a/VCS/ProjectHelper.py Wed Sep 14 19:46:36 2011 +0200 +++ b/VCS/ProjectHelper.py Thu Sep 15 18:28:26 2011 +0200 @@ -332,7 +332,7 @@ self.project.vcs.vcsSetDataFromDict(vcsDataDict) self.project.saveProject() isVcsControlled = \ - self.project.vcs.vcsImport(vcsDataDict, self.project.ppath)[1] + self.project.vcs.vcsImport(vcsDataDict, self.project.ppath)[0] if isVcsControlled: # reopen the project self.project.openProject(self.project.pfile)