Pushing events with a value for state and status triggers a memory leak

I noticed a two issues with the pushing of events with values for state and status:

  • values, stamps and qualities are ignored
  • a memory leak is triggered

It can be reproduced with the following code:

#! /usr/bin/python
from tango import DevState, AttrQuality
from tango.server import Device, command

class TestState(Device):

    def init_device(self):
        self.set_state(DevState.OFF)
        self.set_change_event('State', True, False)

    @command(polling_period=100)
    def update(self):
        self.push_change_event(
            'State', DevState.OFF, 1.0, AttrQuality.ATTR_VALID)

if __name__ == '__main__':
    TestState.run_server()
Edited by Reynald Bourtembourg