diff options
author | Zac Medico <zmedico@gentoo.org> | 2006-06-26 04:02:42 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2006-06-26 04:02:42 +0000 |
commit | c862f984b1fa92a56af4cc7b010f675b3fb84e4e (patch) | |
tree | cacf893fbdfc0539dcc2e8eea6a34fe347ea93da | |
parent | bd320c7891db639a175deb2b65efa87a98881296 (diff) | |
download | portage-c862f984b1fa92a56af4cc7b010f675b3fb84e4e.tar.gz portage-c862f984b1fa92a56af4cc7b010f675b3fb84e4e.tar.bz2 portage-c862f984b1fa92a56af4cc7b010f675b3fb84e4e.zip |
Ensure that the PORTAGE_DEBUG environment variable has a valid integer value.
svn path=/main/trunk/; revision=3664
-rwxr-xr-x | bin/emerge | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/bin/emerge b/bin/emerge index b41a219a3..1acde4c24 100755 --- a/bin/emerge +++ b/bin/emerge @@ -3568,13 +3568,30 @@ def emerge_main(): portage.settings.lock() # Set various debug markers... They should be merged somehow. - if ("--debug" in myopts): - portage.settings.unlock() - portage.settings["PORTAGE_DEBUG"]="1" - portage.settings.backup_changes("PORTAGE_DEBUG") + settings.unlock() + PORTAGE_DEBUG = 0 + try: + PORTAGE_DEBUG = int(settings.get("PORTAGE_DEBUG", str(PORTAGE_DEBUG))) + if PORTAGE_DEBUG not in (0, 1): + portage.writemsg("!!! Invalid value: PORTAGE_DEBUG='%i'\n" % \ + PORTAGE_DEBUG, noiselevel=-1) + portage.writemsg("!!! PORTAGE_DEBUG must be either 0 or 1\n", + noiselevel=-1) + PORTAGE_DEBUG = 0 + except ValueError, e: + portage.writemsg("!!! %s\n" % str(e), noiselevel=-1) + portage.writemsg("!!! Unable to parse integer: PORTAGE_DEBUG='%s'\n" %\ + settings["PORTAGE_DEBUG"], noiselevel=-1) + del e + if "--debug" in myopts: + PORTAGE_DEBUG = 1 + settings["PORTAGE_DEBUG"] = str(PORTAGE_DEBUG) + settings.backup_changes("PORTAGE_DEBUG") + settings.lock() + + if settings.get("PORTAGE_DEBUG", "") == "1": portage.debug=1 - portage.settings.lock() - if "python-trace" in portage.settings.features: + if "python-trace" in settings.features: import portage_debug portage_debug.set_trace(True) |