mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-29 18:18:54 +00:00
60d37f690c
When the construction of a member of Packet_stream_*::Rpc_object after the _cap member threw an exception, the object was not dissolved from the entrypoint although the Rpc_object vanished at this point. This was because the call to 'manage()' happened in the initializer list (for the _cap member instantiation). The destruction of the _cap member then did not dissolve the object. This first fix moves the call to 'manage()' into the constructor body after the instantiation of all other members. A more sophisticated fix would use some kind of 'Managed_object' life-time guard that manages an object on construction and dissolves on destruction. Ref #3525 |
||
---|---|---|
.. | ||
client.h | ||
packet_stream_rx.h | ||
rpc_object.h |