From c5cc3e4e7c44041ec56c0f08f1ff4ec283dee533 Mon Sep 17 00:00:00 2001 From: fuzzyray Date: Thu, 28 Feb 2008 23:43:45 +0000 Subject: Fix traceback when accessing the portage db. (Bug #211716) svn path=/; revision=477 --- trunk/src/gentoolkit/__init__.py | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'trunk/src') diff --git a/trunk/src/gentoolkit/__init__.py b/trunk/src/gentoolkit/__init__.py index ecbea69..668da0d 100644 --- a/trunk/src/gentoolkit/__init__.py +++ b/trunk/src/gentoolkit/__init__.py @@ -27,11 +27,20 @@ except ImportError: import re from threading import Lock -settingslock = Lock() -settings = portage.config(clone=portage.settings) -porttree = portage.db[portage.root]["porttree"] -vartree = portage.db[portage.root]["vartree"] -virtuals = portage.db[portage.root]["virtuals"] +try: + import portage.exception as portage_exception +except ImportError: + import portage_exception + +try: + settingslock = Lock() + settings = portage.config(clone=portage.settings) + porttree = portage.db[portage.root]["porttree"] + vartree = portage.db[portage.root]["vartree"] + virtuals = portage.db[portage.root]["virtuals"] +except portage_exception.PermissionDenied, e: + sys.stderr.write("Permission denied: '%s'\n" % str(e)) + sys.exit(e.errno) Config = { "verbosityLevel": 3 -- cgit v1.2.3