changeset 18729:4e53ac3f466a stable

largefiles: updatelfiles should use working dir standins, not standins from p1 This makes a difference when working directory is dirty, especially when merging with a revision for which we don't have largefiles.
author Mads Kiilerich <madski@unity3d.com>
date Thu, 28 Feb 2013 13:45:18 +0100
parents 1e636f7b1cfe
children a5d33446e46c
files hgext/largefiles/lfcommands.py tests/test-largefiles.t
diffstat 2 files changed, 20 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/hgext/largefiles/lfcommands.py	Thu Feb 28 13:45:18 2013 +0100
+++ b/hgext/largefiles/lfcommands.py	Thu Feb 28 13:45:18 2013 +0100
@@ -450,7 +450,7 @@
         if printmessage and lfiles:
             ui.status(_('getting changed largefiles\n'))
             printed = True
-            cachelfiles(ui, repo, '.', lfiles)
+            cachelfiles(ui, repo, None, lfiles)
 
         updated, removed = 0, 0
         for f in lfiles:
--- a/tests/test-largefiles.t	Thu Feb 28 13:45:18 2013 +0100
+++ b/tests/test-largefiles.t	Thu Feb 28 13:45:18 2013 +0100
@@ -1298,6 +1298,25 @@
   repository tip rolled back to revision 9 (undo commit)
   working directory now based on revision 6
 
+Merge with revision with missing largefile - and make sure it tries to fetch it.
+
+  $ hg up -Cqr null
+  $ echo f > f
+  $ hg ci -Am branch
+  adding f
+  Invoking status precommit hook
+  A f
+  created new head
+  $ hg merge -r 6
+  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+  getting changed largefiles
+  error getting id 7838695e10da2bb75ac1156565f40a2595fa2fa0 from url file:$TESTTMP/d for file large3: can't get file locally (glob)
+  1 largefiles updated, 0 removed
+
+  $ hg rollback -q
+  $ hg up -Cq
+
 Pulling 0 revisions with --all-largefiles should not fetch for all revisions
 
   $ hg pull --all-largefiles