summaryrefslogtreecommitdiff
path: root/server/src/session.cc
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/session.cc')
-rw-r--r--server/src/session.cc13
1 files changed, 11 insertions, 2 deletions
diff --git a/server/src/session.cc b/server/src/session.cc
index fcd138a..234f004 100644
--- a/server/src/session.cc
+++ b/server/src/session.cc
@@ -121,12 +121,21 @@ void Session::setIdle(bool idle)
}
}
-void Session::commit()
+void Session::commit() throw(LUAScript::Exception, Journal::Exception)
{
DEBUG(session, "[%p] commit(sessionid: '%s')\n", this, sessionid.c_str());
if(_journal != NULL) {
- _journal->commit();
+ try {
+ _journal->runOnCommitScripts();
+ } catch(LUAScript::Exception &e) {
+ throw e;
+ }
+ try {
+ _journal->commit();
+ } catch(Journal::Exception &e) {
+ throw e;
+ }
delete _journal;
_journal = NULL;
}