summaryrefslogtreecommitdiff
path: root/rtemstoolkit/rld-process.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'rtemstoolkit/rld-process.cpp')
-rw-r--r--rtemstoolkit/rld-process.cpp21
1 files changed, 18 insertions, 3 deletions
diff --git a/rtemstoolkit/rld-process.cpp b/rtemstoolkit/rld-process.cpp
index e91796f..30e0605 100644
--- a/rtemstoolkit/rld-process.cpp
+++ b/rtemstoolkit/rld-process.cpp
@@ -83,7 +83,13 @@ namespace rld
temporary_files::~temporary_files ()
{
- clean_up ();
+ try
+ {
+ clean_up ();
+ }
+ catch (...)
+ {
+ }
}
const std::string
@@ -99,6 +105,9 @@ namespace rld
RLD_PATH_SEPARATOR_STR);
tempfile_ref ref (name, keep);
tempfiles.push_back (ref);
+
+ ::free (temp);
+
return name;
}
@@ -162,8 +171,14 @@ namespace rld
tempfile::~tempfile ()
{
- close ();
- temporaries.erase (_name);
+ try
+ {
+ close ();
+ temporaries.erase (_name);
+ }
+ catch (...)
+ {
+ }
}
void