From a4f3d3fbb5961b7f447b2b8d782bb883b6ccf28d Mon Sep 17 00:00:00 2001 From: Michal Bloch Date: Thu, 13 Feb 2025 20:06:19 +0100 Subject: [PATCH] Make sure destructors don't throw Change-Id: Ia4d3d2fa715708f04fded238305543640e78424a --- src/livedumper/helpers.hpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/livedumper/helpers.hpp b/src/livedumper/helpers.hpp index f7f0cb5c..59e850f0 100644 --- a/src/livedumper/helpers.hpp +++ b/src/livedumper/helpers.hpp @@ -125,7 +125,16 @@ class Guardian { public: Guardian(const std::function &start, const std::function &end) : m_start(start), m_end(end) { m_start(); } - ~Guardian() { m_end(); } + ~Guardian() { + try { + m_end(); + } catch (...) { + /* Token catch just because this + * is a destructor, which can't rethrow. + * Ignore because we can rely on people + * not to use stupid guard functions. */ + } + } }; bool fileExists(const std::string &path) { -- 2.34.1