Selaa lähdekoodia

vm: Features fixes

clear: dict should not be mutated during interation.
Marek Marczykowski-Górecki 7 vuotta sitten
vanhempi
commit
680dbf432c
2 muutettua tiedostoa jossa 4 lisäystä ja 2 poistoa
  1. 3 1
      qubes/vm/__init__.py
  2. 1 1
      qubes/vm/qubesvm.py

+ 3 - 1
qubes/vm/__init__.py

@@ -102,11 +102,13 @@ class Features(dict):
             value = '1' if value else ''
         else:
             value = str(value)
+        # TODO: perhaps this shouldn't be fired on unchanged value? or at
+        # least oldvalue should be provided?
         self.vm.fire_event('domain-feature-set', key=key, value=value)
         super(Features, self).__setitem__(key, value)
 
     def clear(self):
-        for key in self:
+        for key in tuple(self):
             del self[key]
 
     def pop(self, _key, _default=None):

+ 1 - 1
qubes/vm/qubesvm.py

@@ -301,7 +301,7 @@ class QubesVM(qubes.vm.mix.net.NetVMMixin, qubes.vm.BaseVM):
             A feature was removed.
 
             :param subject: Event emitter (the qube object)
-            :param event: Event name (``'domain-feature-set'``)
+            :param event: Event name (``'domain-feature-delete'``)
             :param key: feature name
 
         .. event:: domain-tag-add (subject, event, tag)