diff --git a/repos/os/src/test/vmm_x86/component.cc b/repos/os/src/test/vmm_x86/component.cc index 1bfbd58db7..d56a561061 100644 --- a/repos/os/src/test/vmm_x86/component.cc +++ b/repos/os/src/test/vmm_x86/component.cc @@ -492,8 +492,9 @@ class Vmm { private: - Genode::Signal_handler _destruct_handler; - Genode::Reconstructible _vm; + Genode::Env &_env; + Genode::Signal_handler _destruct_handler; + Genode::Reconstructible _vm; void _destruct() { @@ -502,12 +503,14 @@ class Vmm { _vm.destruct(); Genode::log("vmm test finished"); + _env.parent().exit(0); } public: Vmm(Genode::Env &env) : + _env(env), _destruct_handler(env.ep(), *this, &Vmm::_destruct), _vm(env, _destruct_handler) {