X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fboost.cpp;h=7ae7433a1bea38ca2e537682e457789fba571ef3;hb=fa146a0ffe431ce239851fc20986e3052127f33a;hp=02fa09fc18d4ec33881f53362e6d407fd5411bd6;hpb=f630be890494c849981e4fb52ea4740506e92bed;p=lyx.git diff --git a/src/boost.cpp b/src/boost.cpp index 02fa09fc18..7ae7433a1b 100644 --- a/src/boost.cpp +++ b/src/boost.cpp @@ -3,7 +3,7 @@ * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * - * \author Lars Gullik Bjønnes + * \author Lars Gullik Bjønnes * * Full author contact details are available in file CREDITS. */ @@ -11,49 +11,40 @@ #include #include "LyX.h" -#include "debug.h" -#include "support/lyxlib.h" -#include +#include "support/debug.h" + +#include "support/lassert.h" #include +#include +#include -using std::endl; +using namespace std; using lyx::lyxerr; -using lyx::LyX; namespace boost { #ifndef BOOST_NO_EXCEPTIONS void throw_exception(std::exception const & e) { - lyxerr << "Exception caught:\n" - << e.what() << endl; - BOOST_ASSERT(false); + lyxerr << "Exception caught:\n" << e.what() << endl; + LASSERT(false, /**/); } #endif -void emergencyCleanup() -{ - static bool didCleanup; - if (didCleanup) - return; - - didCleanup = true; - - LyX::cref().emergencyCleanup(); -} - - void assertion_failed(char const * expr, char const * function, char const * file, long line) { lyxerr << "Assertion triggered in " << function << " by failing check \"" << expr << "\"" << " in file " << file << ":" << line << endl; - emergencyCleanup(); - lyx::support::abort(); + + // FIXME: by default we exit here but we could also inform the user + // about the assertion and do the emergency cleanup without exiting. + // FIXME: do we have a list of exit codes defined somewhere? + lyx::lyx_exit(1); } } // namespace boost