Skip to content
Snippets Groups Projects
  1. Mar 24, 2008
  2. Mar 23, 2008
  3. Mar 24, 2008
    • Alexis S. L. Carvalho's avatar
      don't use hasattr in repo.invalidate · b2f1d97d
      Alexis S. L. Carvalho authored
      hasattr ends up calling __getattr__ which will instantiate the very
      attributes we want to remove.
      b2f1d97d
    • Alexis S. L. Carvalho's avatar
      localrepo.commit: grab locks before getting the list of files to commit · 6440e25a
      Alexis S. L. Carvalho authored
      Somebody may change the dirstate after we've determined the parents of
      the working dir and run repo.status, but before we called wlock().
      
      This should also fix issue997, where backout would change a file without
      changing its size and then call repo.commit without passing the list of
      files. If this happened in less than one second, we wouldn't detect any
      file changes - the in-memory dirstate still has the cached stat data for
      that file. Grabbing the wlock early causes the dirstate to be
      invalidated and we end up reading the dirstate file again, which has
      that file marked for lookup (size == -1).
      
      A better fix would be for backout to give repo.commit the exact list of
      files, but that'll require some changes to the revert operation.
      
      A significant user-visible change is that the precommit hook is always
      run with both locks grabbed - previously, hg commit would run it before
      grabbing any locks, but hg import would run it after grabbing locks.
      6440e25a
    • Alexis S. L. Carvalho's avatar
      Avoid calling heads() twice on every hg commit. · 53912d30
      Alexis S. L. Carvalho authored
      In an extreme case (merging two revisions with very low revision numbers)
      this could be slower than the previous code, but it should be much faster
      in the usual cases (parents are near the tip).  It also avoids some races
      in some uninteresting cases (e.g. two concurrent hg commits).
      53912d30
  4. Mar 23, 2008
  5. Mar 22, 2008
Loading