[PATCH 3 of 7] largefiles: add copytostore() fstandin argument to replace readstandin() (API)
FUJIWARA Katsunori
foozy at lares.dti.ne.jp
Fri Mar 31 13:41:48 EDT 2017
# HG changeset patch
# User FUJIWARA Katsunori <foozy at lares.dti.ne.jp>
# Date 1490981568 -32400
# Sat Apr 01 02:32:48 2017 +0900
# Node ID 30fde597a072c6bc6419fcbdfab4889cb1c72914
# Parent a99b27d2fdfb148aa44d1fec88b6b7accadd8084
largefiles: add copytostore() fstandin argument to replace readstandin() (API)
copyalltostore(), only one caller of copytostore(), already knows
standin file name of the target largefile. Therefore, passing it to
copytostore() is more efficient than calculating it in copytostore()
or readstandin().
diff --git a/hgext/largefiles/lfutil.py b/hgext/largefiles/lfutil.py
--- a/hgext/largefiles/lfutil.py
+++ b/hgext/largefiles/lfutil.py
@@ -245,9 +245,9 @@ def copyfromcache(repo, hash, filename):
return False
return True
-def copytostore(repo, revorctx, file, uploaded=False):
+def copytostore(repo, revorctx, file, fstandin, uploaded=False):
wvfs = repo.wvfs
- hash = readstandin(repo, file, revorctx)
+ hash = readasstandin(repo[revorctx][fstandin])
if instore(repo, hash):
return
if wvfs.exists(file):
@@ -263,7 +263,7 @@ def copyalltostore(repo, node):
for filename in ctx.files():
realfile = splitstandin(filename)
if realfile is not None and filename in ctx.manifest():
- copytostore(repo, ctx, realfile)
+ copytostore(repo, ctx, realfile, filename)
def copytostoreabsolute(repo, file, hash):
if inusercache(repo.ui, hash):
More information about the Mercurial-devel
mailing list