[PATCH] applyupdates: audit unlinking of renamed files and directories

Matt Mackall mpm at selenic.com
Sat May 21 10:28:14 CDT 2011


On Sat, 2011-05-21 at 12:45 +0200, Adrian Buehlmann wrote:
> # HG changeset patch
> # User Adrian Buehlmann <adrian at cadifra.com>
> # Date 1305936300 -7200
> # Node ID ddb1ed50c6c5267c67b928c0242de81300af1745
> # Parent  bb5cbc16349e47adc8f8300fed3c397e0f54f4ec
> applyupdates: audit unlinking of renamed files and directories

Queued, thanks.

> diff --git a/mercurial/merge.py b/mercurial/merge.py
> --- a/mercurial/merge.py
> +++ b/mercurial/merge.py
> @@ -296,14 +296,15 @@
>              if f != fd and move:
>                  moves.append(f)
>  
> +    audit = scmutil.pathauditor(repo.root)
> +
>      # remove renamed files after safely stored
>      for f in moves:
>          if os.path.lexists(repo.wjoin(f)):
>              repo.ui.debug("removing %s\n" % f)
> +            audit(f)
>              os.unlink(repo.wjoin(f))
>  
> -    audit_path = scmutil.pathauditor(repo.root)
> -
>      numupdates = len(action)
>      for i, a in enumerate(action):
>          f, m = a[:2]
> @@ -313,7 +314,7 @@
>              continue
>          if m == "r": # remove
>              repo.ui.note(_("removing %s\n") % f)
> -            audit_path(f)
> +            audit(f)
>              if f == '.hgsubstate': # subrepo states need updating
>                  subrepo.submerge(repo, wctx, mctx, wctx, overwrite)
>              try:
> @@ -340,6 +341,7 @@
>              if (move and repo.dirstate.normalize(fd) != f
>                  and os.path.lexists(repo.wjoin(f))):
>                  repo.ui.debug("removing %s\n" % f)
> +                audit(f)
>                  os.unlink(repo.wjoin(f))
>          elif m == "g": # get
>              flags = a[2]
> @@ -354,6 +356,7 @@
>              f2, fd, flags = a[2:]
>              if f:
>                  repo.ui.note(_("moving %s to %s\n") % (f, fd))
> +                audit(f)
>                  t = wctx.filectx(f).data()
>                  repo.wwrite(fd, t, flags)
>                  util.unlinkpath(repo.wjoin(f))
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at selenic.com
> http://selenic.com/mailman/listinfo/mercurial-devel


-- 
Mathematics is the supreme nostalgia of our time.




More information about the Mercurial-devel mailing list