chiark / gitweb /
peerdb/tripe-newpeers.in (ConfigSection): Fix handling of `@inherits'.
[tripe] / peerdb / tripe-newpeers.in
index fdb91708a42105a7aa6b01efc3bd189b322a5d7a..1213b904aad2877afe380846c8c06dea4139554e 100644 (file)
@@ -296,6 +296,9 @@ class ConfigSection (object):
     ## Special handling for the `name' key.
     if key == 'name':
       value = me._itemmap.get('name', me.name)
+    elif key == '@inherits':
+      try: return me._itemmap['@inherits']
+      except KeyError: raise MissingKeyException(me.name, key)
     else:
       value, _ = me._get(key)
       if value is None:
@@ -322,8 +325,7 @@ class ConfigSection (object):
         if p.name not in visiting:
           stack.append(p); visiting[p.name] = True
 
-      for key in sec._itemmap.iterkeys():
-        if key != '@inherit': seen[key] = None
+      for key in sec._itemmap.iterkeys(): seen[key] = None
 
     ## And we're done.
     return seen.iterkeys()