From 86fd2abede1ba3388121b00f30b62114bf23ef52 Mon Sep 17 00:00:00 2001 From: unzner Date: Thu, 22 Nov 2012 20:36:31 +0000 Subject: [PATCH] Completed the terminate() method git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1948 8c4709b5-6ec9-48aa-a5cd-a96041d1645a --- src/experiments/l4-sys/experiment.cc | 5 +++++ src/experiments/l4-sys/experiment.hpp | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/src/experiments/l4-sys/experiment.cc b/src/experiments/l4-sys/experiment.cc index 00e018d0..a58a7b75 100644 --- a/src/experiments/l4-sys/experiment.cc +++ b/src/experiments/l4-sys/experiment.cc @@ -178,10 +178,15 @@ L4SysExperiment::L4SysExperiment() } L4SysExperiment::~L4SysExperiment() { + destroy(); +} + +void L4SysExperiment::destroy() { delete param; } void L4SysExperiment::terminate(int reason) { + destroy(); simulator.terminate(reason); } diff --git a/src/experiments/l4-sys/experiment.hpp b/src/experiments/l4-sys/experiment.hpp index d4e690a0..44219d9a 100644 --- a/src/experiments/l4-sys/experiment.hpp +++ b/src/experiments/l4-sys/experiment.hpp @@ -39,6 +39,11 @@ protected: * @param reason the exit reason, i.e. exit code, passed on to simulator::terminate */ void terminate(int reason); + /** + * Frees all resources allocated by this object. + * This function is called by terminate as well as the destructor. + */ + inline void destroy(); private: /** * Sanitises the output string of the serial device monitored.