Mercurial > hg
changeset 18722:f0aa8bbffe60 stable
largefiles: fix download of largefiles from an empty list of changesets
The empty list was interpreted as all revisions - just like None is.
The empty list is now handled explicitly.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Thu, 28 Feb 2013 13:44:24 +0100 |
parents | 2dc7f63181b9 |
children | e56f7cd8c67b |
files | hgext/largefiles/lfcommands.py tests/test-largefiles.t |
diffstat | 2 files changed, 16 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/largefiles/lfcommands.py Thu Feb 28 13:44:22 2013 +0100 +++ b/hgext/largefiles/lfcommands.py Thu Feb 28 13:44:24 2013 +0100 @@ -435,11 +435,12 @@ pass totalsuccess = 0 totalmissing = 0 - for ctx in cmdutil.walkchangerevs(repo, matchfn, {'rev' : rev}, - prepare): - success, missing = cachelfiles(ui, repo, ctx.node()) - totalsuccess += len(success) - totalmissing += len(missing) + if rev != []: # walkchangerevs on empty list would return all revs + for ctx in cmdutil.walkchangerevs(repo, matchfn, {'rev' : rev}, + prepare): + success, missing = cachelfiles(ui, repo, ctx.node()) + totalsuccess += len(success) + totalmissing += len(missing) ui.status(_("%d additional largefiles cached\n") % totalsuccess) if totalmissing > 0: ui.status(_("%d largefiles failed to download\n") % totalmissing)
--- a/tests/test-largefiles.t Thu Feb 28 13:44:22 2013 +0100 +++ b/tests/test-largefiles.t Thu Feb 28 13:44:24 2013 +0100 @@ -1262,6 +1262,16 @@ - cleanup $ rm $TESTTMP/d/.hg/largefiles/eb7338044dc27f9bc59b8dd5a246b065ead7a9c4 +Pulling 0 revisions with --all-largefiles should not fetch for all revisions + + $ hg pull --all-largefiles + pulling from $TESTTMP/d (glob) + searching for changes + no changes found + caching new largefiles + 0 largefiles cached + 0 additional largefiles cached + Merging does not revert to old versions of largefiles and also check that merging after having pulled from a non-default remote works correctly.