hgext/largefiles/overrides.py
changeset 28878 a75c9665ef06
parent 28715 a7f7b7acf489
child 29305 814076f4ace3
--- a/hgext/largefiles/overrides.py	Wed Apr 13 01:45:45 2016 +0200
+++ b/hgext/largefiles/overrides.py	Sun Mar 27 13:00:28 2016 -0700
@@ -801,6 +801,21 @@
         ui.status(_("%d largefiles cached\n") % numcached)
     return result
 
+def overridepush(orig, ui, repo, *args, **kwargs):
+    """Override push command and store --lfrev parameters in opargs"""
+    lfrevs = kwargs.pop('lfrev', None)
+    if lfrevs:
+        opargs = kwargs.setdefault('opargs', {})
+        opargs['lfrevs'] = scmutil.revrange(repo, lfrevs)
+    return orig(ui, repo, *args, **kwargs)
+
+def exchangepushoperation(orig, *args, **kwargs):
+    """Override pushoperation constructor and store lfrevs parameter"""
+    lfrevs = kwargs.pop('lfrevs', None)
+    pushop = orig(*args, **kwargs)
+    pushop.lfrevs = lfrevs
+    return pushop
+
 revsetpredicate = registrar.revsetpredicate()
 
 @revsetpredicate('pulled()')