Mercurial > hg
changeset 21089:278bd08a2902
largefiles: use more reasonable locking for update
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Sat, 27 Apr 2013 23:19:52 +0200 |
parents | e095626e8676 |
children | aa3d652ba1d5 |
files | hgext/largefiles/overrides.py |
diffstat | 1 files changed, 6 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/largefiles/overrides.py Sat Apr 27 23:19:52 2013 +0200 +++ b/hgext/largefiles/overrides.py Sat Apr 27 23:19:52 2013 +0200 @@ -297,15 +297,15 @@ # will get the new files. Filemerge is also overridden so that the merge # will merge standins correctly. def overrideupdate(orig, ui, repo, *pats, **opts): - lfdirstate = lfutil.openlfdirstate(ui, repo) - s = lfdirstate.status(match_.always(repo.root, repo.getcwd()), [], False, - False, False) - (unsure, modified, added, removed, missing, unknown, ignored, clean) = s - # Need to lock between the standins getting updated and their # largefiles getting updated wlock = repo.wlock() try: + lfdirstate = lfutil.openlfdirstate(ui, repo) + s = lfdirstate.status(match_.always(repo.root, repo.getcwd()), + [], False, False, False) + (unsure, modified, added, removed, missing, unknown, ignored, clean) = s + if opts['check']: mod = len(modified) > 0 for lfile in unsure: @@ -322,9 +322,9 @@ if not opts['clean']: for lfile in unsure + modified + added: lfutil.updatestandin(repo, lfutil.standin(lfile)) + return orig(ui, repo, *pats, **opts) finally: wlock.release() - return orig(ui, repo, *pats, **opts) # Before starting the manifest merge, merge.updates will call # _checkunknown to check if there are any files in the merged-in