mercurial/dirstate.py
changeset 6975 5e1a867e5d65
parent 6973 8c136043867b
child 6977 df96a0d1d79d
equal deleted inserted replaced
6974:8997b81a33da 6975:5e1a867e5d65
   345             del self._map[f]
   345             del self._map[f]
   346         except KeyError:
   346         except KeyError:
   347             self._ui.warn(_("not in dirstate: %s\n") % f)
   347             self._ui.warn(_("not in dirstate: %s\n") % f)
   348 
   348 
   349     def _normalize(self, path):
   349     def _normalize(self, path):
   350         if path not in self._foldmap:
   350         norm_path = os.path.normcase(os.path.normpath(path))
       
   351         if norm_path not in self._foldmap:
   351             if not os.path.exists(path):
   352             if not os.path.exists(path):
   352                 return path
   353                 return path
   353             self._foldmap[path] = util.fspath(path, self._root)
   354             self._foldmap[norm_path] = util.fspath(path, self._root)
   354         return self._foldmap[path]
   355         return self._foldmap[norm_path]
   355 
   356 
   356     def clear(self):
   357     def clear(self):
   357         self._map = {}
   358         self._map = {}
   358         if "_dirs" in self.__dict__:
   359         if "_dirs" in self.__dict__:
   359             delattr(self, "_dirs");
   360             delattr(self, "_dirs");