fix bug in late-import of yaml in invirt.config
[invirt/packages/invirt-base.git] / files / usr / share / python-support / sipb-xen-base / invirt / config.py
index cd0a9d4..c27ba6b 100644 (file)
@@ -5,9 +5,6 @@ from os.path import getmtime
 default_src_path   = '/etc/invirt/master.yaml'
 default_cache_path = '/var/lib/invirt/cache.json'
 
-try:    default_loader = yaml.CSafeLoader
-except: default_loader = yaml.SafeLoader
-
 def load(src_path = default_src_path,
          cache_path = default_cache_path,
          force_refresh = False):
@@ -37,6 +34,8 @@ def load(src_path = default_src_path,
         @with_lock_file('/var/lib/invirt/cache.lock')
         def cfg():
             import yaml
+            try:    default_loader = yaml.CSafeLoader
+            except: default_loader = yaml.SafeLoader
             cfg = with_closing(file(src_path))(lambda f: yaml.load(f, default_loader))
             try: with_closing(file(cache_path, 'w'))(lambda f: f.write(json.write(cfg)))
             except: pass # silent failure