From 893cac140232478e3ce9640ccf31dbfbfc2434c0 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 14 Dec 2011 22:41:10 +0000 Subject: * Remove the terminate handler, which was only really needed because of Berkeley DB (see r8632). --- src/libmain/shared.cc | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/src/libmain/shared.cc b/src/libmain/shared.cc index 9076e9994..d3b73f8fd 100644 --- a/src/libmain/shared.cc +++ b/src/libmain/shared.cc @@ -90,23 +90,6 @@ static void setLogType(string lt) } -static void closeStore() -{ - try { - throw; - } catch (std::exception & e) { - printMsg(lvlError, - format("FATAL: unexpected exception (closing store and aborting): %1%") % e.what()); - } - try { - store.reset((StoreAPI *) 0); - } catch (...) { - ignoreException(); - } - abort(); -} - - RemoveTempRoots::~RemoveTempRoots() { removeTempRoots(); @@ -238,12 +221,6 @@ static void initAndRun(int argc, char * * argv) exit. */ RemoveTempRoots removeTempRoots __attribute__((unused)); - /* Make sure that the database gets closed properly, even if - terminate() is called (which happens sometimes due to bugs in - destructor/exceptions interaction, but that needn't preclude a - clean shutdown of the database). */ - std::set_terminate(closeStore); - run(remaining); /* Close the Nix database. */ -- cgit v1.2.3