summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-01-29 18:45:33 +0000
committerZac Medico <zmedico@gentoo.org>2010-01-29 18:45:33 +0000
commit767ec2aecdd77b4abc035f999317c601d68b1844 (patch)
tree2a02cc4133a4e644056f65f014fe702eda8fa321
parentd437982c9627f6ed734a9734fc6c58caa7a72af9 (diff)
downloadportage-767ec2aecdd77b4abc035f999317c601d68b1844.tar.gz
portage-767ec2aecdd77b4abc035f999317c601d68b1844.tar.bz2
portage-767ec2aecdd77b4abc035f999317c601d68b1844.zip
Rearrange _selinux ImportError handling so the workaround for bug #298310
isn't necessary. (trunk r15167) svn path=/main/branches/2.1.7/; revision=15235
-rw-r--r--pym/portage/__init__.py16
1 files changed, 6 insertions, 10 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index 7e148a354..d9a82bc83 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -288,23 +288,19 @@ import shutil as _shutil
shutil = _unicode_module_wrapper(_shutil, encoding=_encodings['fs'])
# Imports below this point rely on the above unicode wrapper definitions.
-_selinux = None
-selinux = None
-_selinux_merge = None
try:
import portage._selinux
- # Make sure the _selinux attribute is correctly reinitialized after
- # reload(portage) is called. See bug #298310.
- _selinux = sys.modules['portage._selinux']
selinux = _unicode_module_wrapper(_selinux,
encoding=_encodings['fs'])
_selinux_merge = _unicode_module_wrapper(_selinux,
encoding=_encodings['merge'])
-except OSError as e:
- sys.stderr.write("!!! SELinux not loaded: %s\n" % str(e))
+except (ImportError, OSError) as e:
+ if isinstance(e, OSError):
+ sys.stderr.write("!!! SELinux not loaded: %s\n" % str(e))
del e
-except ImportError:
- pass
+ _selinux = None
+ selinux = None
+ _selinux_merge = None
from portage.manifest import Manifest