mercurial/dirstate.py
changeset 47994 ccb9cc47b7b6
parent 47992 14fa2e583422
child 47995 e7d0a511965c
equal deleted inserted replaced
47993:eb1f8d6e9419 47994:ccb9cc47b7b6
   715         s = os.lstat(self._join(filename))
   715         s = os.lstat(self._join(filename))
   716         mode = s.st_mode
   716         mode = s.st_mode
   717         size = s.st_size
   717         size = s.st_size
   718         mtime = s[stat.ST_MTIME]
   718         mtime = s[stat.ST_MTIME]
   719         return (mode, size, mtime)
   719         return (mode, size, mtime)
   720 
       
   721     def _normallookup(self, f):
       
   722         '''Mark a file normal, but possibly dirty.'''
       
   723         if self.in_merge:
       
   724             # if there is a merge going on and the file was either
       
   725             # "merged" or coming from other parent (-2) before
       
   726             # being removed, restore that state.
       
   727             entry = self._map.get(f)
       
   728             if entry is not None:
       
   729                 # XXX this should probably be dealt with a a lower level
       
   730                 # (see `merged_removed` and `from_p2_removed`)
       
   731                 if entry.merged_removed or entry.from_p2_removed:
       
   732                     source = self._map.copymap.get(f)
       
   733                     if entry.merged_removed:
       
   734                         self._addpath(f, merged=True)
       
   735                     else:
       
   736                         self._addpath(f, from_p2=True)
       
   737                     self._map.copymap.pop(f, None)
       
   738                     if source is not None:
       
   739                         self.copy(source, f)
       
   740                     return
       
   741                 elif entry.merged or entry.from_p2:
       
   742                     return
       
   743         self._addpath(f, possibly_dirty=True)
       
   744         self._map.copymap.pop(f, None)
       
   745 
   720 
   746     def _discoverpath(self, path, normed, ignoremissing, exists, storemap):
   721     def _discoverpath(self, path, normed, ignoremissing, exists, storemap):
   747         if exists is None:
   722         if exists is None:
   748             exists = os.path.lexists(os.path.join(self._root, path))
   723             exists = os.path.lexists(os.path.join(self._root, path))
   749         if not exists:
   724         if not exists: