Plugins/VcsPlugins/vcsMercurial/hg.py

changeset 194
4820fc69705c
parent 192
2c1187ab98ce
child 199
675623ee5d7d
--- a/Plugins/VcsPlugins/vcsMercurial/hg.py	Thu Apr 22 17:47:29 2010 +0000
+++ b/Plugins/VcsPlugins/vcsMercurial/hg.py	Thu Apr 22 18:14:32 2010 +0000
@@ -784,6 +784,9 @@
         if fname == '.' and os.path.isdir(os.path.join(dname, self.adminDir)):
             return self.canBeCommitted
         
+        if name in self.statusCache:
+            return self.statusCache[name]
+        
         # find the root of the repo
         repodir = dname
         while not os.path.isdir(os.path.join(repodir, self.adminDir)):
@@ -837,10 +840,6 @@
         
         found = False
         for name in list(self.statusCache.keys()):
-##            if os.path.dirname(name) == dname:
-##                if shortcut:
-##                    found = True
-##                    break
             if name in names:
                 found = True
                 names[name] = self.statusCache[name]
@@ -870,17 +869,14 @@
                         str(process.readAllStandardOutput(), ioEncoding, 'replace')
                     for line in output.splitlines():
                         flag, path = line.split(" ", 1)
-                        name = os.path.join(repodir, os.path.normcase(path))
+                        name = os.path.join(repodir, os.path.normcase(path))
                         dirName = os.path.dirname(name)
                         if name.startswith(dname):
                             if flag not in "?I":
                                 if name in names:
                                     names[name] = self.canBeCommitted
-##                                dirName = os.path.dirname(name)
                                 if dirName in names:
                                     names[dirName] = self.canBeCommitted
-##                                self.statusCache[name] = self.canBeCommitted
-##                                self.statusCache[dirName] = self.canBeCommitted
                                 if dirs:
                                     for d in dirs:
                                         if name.startswith(d):
@@ -892,7 +888,6 @@
                             self.statusCache[dirName] = self.canBeCommitted
                         else:
                             self.statusCache[name] = self.canBeAdded
-##                            dirName = os.path.dirname(name)
                             if dirName not in self.statusCache:
                                 self.statusCache[dirName] = self.canBeAdded
         

eric ide

mercurial