summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2012-08-27 20:59:49 -0400
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2012-08-27 20:59:49 -0400
commita9a7ba9da3c67766bf27f462bd4d32c0dd2caa6c (patch)
tree81533c6a7a3acc2756867323d595677c2c6c4051
parent122200921b69ac8e06aedb450542c5f105a7a552 (diff)
downloadbcfg2-a9a7ba9da3c67766bf27f462bd4d32c0dd2caa6c.tar.gz
bcfg2-a9a7ba9da3c67766bf27f462bd4d32c0dd2caa6c.tar.bz2
bcfg2-a9a7ba9da3c67766bf27f462bd4d32c0dd2caa6c.zip
POSIX: fixed setting handled entries
-rw-r--r--src/lib/Bcfg2/Client/Tools/POSIX/__init__.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/lib/Bcfg2/Client/Tools/POSIX/__init__.py b/src/lib/Bcfg2/Client/Tools/POSIX/__init__.py
index 46631eb06..6316c749c 100644
--- a/src/lib/Bcfg2/Client/Tools/POSIX/__init__.py
+++ b/src/lib/Bcfg2/Client/Tools/POSIX/__init__.py
@@ -32,9 +32,14 @@ class POSIX(Bcfg2.Client.Tools.Tool):
# need to do it again after __handles__ has been populated. we
# can't populate __handles__ when the class is created because
# _load_handlers() _must_ be called at run-time, not at
- # compile-time.
+ # compile-time. This also has to _extend_ self.handled, not
+ # set it, because self.handled has some really crazy
+ # semi-global thing going that, frankly, scares the crap out
+ # of me.
for struct in config:
- self.handled = [e for e in struct if self.handlesEntry(e)]
+ self.handled.extend([e for e in struct
+ if (e not in self.handled and
+ self.handlesEntry(e))])
def _load_handlers(self):
# this must be called at run-time, not at compile-time, or we