summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-10-08 13:30:08 -0700
committerZac Medico <zmedico@gentoo.org>2012-10-08 13:30:08 -0700
commit1ddda9a8db7b1e09a04220a8677b60015b2fe849 (patch)
treede52028a02c17359463561a229e0d79b7d5e3423 /pym
parentae5d657a2c7e5fcf23607e8b061f049e56f8137f (diff)
downloadportage-1ddda9a8db7b1e09a04220a8677b60015b2fe849.tar.gz
portage-1ddda9a8db7b1e09a04220a8677b60015b2fe849.tar.bz2
portage-1ddda9a8db7b1e09a04220a8677b60015b2fe849.zip
emerge: handle --load-average with no arg
With no argument, removes a previous load limit (same behavior as make).
Diffstat (limited to 'pym')
-rw-r--r--pym/_emerge/main.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py
index c3e96465d..e3557e574 100644
--- a/pym/_emerge/main.py
+++ b/pym/_emerge/main.py
@@ -454,6 +454,16 @@ def insert_optional_args(args):
return False
valid_integers = valid_integers()
+
+ class valid_floats(object):
+ def __contains__(self, s):
+ try:
+ return float(s) >= 0
+ except (ValueError, OverflowError):
+ return False
+
+ valid_floats = valid_floats()
+
y_or_n = ('y', 'n',)
new_args = []
@@ -475,6 +485,7 @@ def insert_optional_args(args):
'--getbinpkgonly' : y_or_n,
'--jobs' : valid_integers,
'--keep-going' : y_or_n,
+ '--load-average' : valid_floats,
'--package-moves' : y_or_n,
'--quiet' : y_or_n,
'--quiet-build' : y_or_n,
@@ -1209,6 +1220,9 @@ def parse_opts(tmpcmdline, silent=False):
myoptions.jobs = jobs
+ if myoptions.load_average == "True":
+ myoptions.load_average = None
+
if myoptions.load_average:
try:
load_average = float(myoptions.load_average)